mod_proxy65: Limit dump of invalid data to 300 bytes (like mod_c2s)

vault/master
Kim Alvefur 6 years ago
parent c64ae5fb65
commit 5b9261dab6
  1. 4
      plugins/mod_proxy65.lua

@ -44,7 +44,7 @@ function listener.onincoming(conn, data)
end -- else error, unexpected input
conn:write("\5\255"); -- send (SOCKS version 5, no acceptable method)
conn:close();
module:log("debug", "Invalid SOCKS5 greeting received: %q", data);
module:log("debug", "Invalid SOCKS5 greeting received: %q", data:sub(1, 300));
else -- connection request
--local head = string.char( 0x05, 0x01, 0x00, 0x03, 40 ); -- ( VER=5=SOCKS5, CMD=1=CONNECT, RSV=0=RESERVED, ATYP=3=DOMAIMNAME, SHA-1 size )
if #data == 47 and data:sub(1,5) == "\5\1\0\3\40" and data:sub(-2) == "\0\0" then
@ -66,7 +66,7 @@ function listener.onincoming(conn, data)
else -- error, unexpected input
conn:write("\5\1\0\3\0\0\0"); -- VER, REP, RSV, ATYP, BND.ADDR (sha), BND.PORT (2 Byte)
conn:close();
module:log("debug", "Invalid SOCKS5 negotiation received: %q", data);
module:log("debug", "Invalid SOCKS5 negotiation received: %q", data:sub(1, 300));
end
end
end

Loading…
Cancel
Save