kgretzky / evilginx2

Standalone man-in-the-middle attack framework used for phishing login credentials along with session cookies, allowing for the bypass of 2-factor authentication
BSD 3-Clause "New" or "Revised" License
10.26k stars 1.87k forks source link

Limit HTTP proxy listen address + add real_ip_header config option #914

Open ptrsvbd opened 1 year ago

ptrsvbd commented 1 year ago

The HTTP proxy should respect IPv4 address set in configuration and not listen on 0.0.0.0 so it won't interfere with other daemons listening on the same port on different (specific) IP address.

When Evilginx is running behind a reverse HTTP proxy, the information on client IP address is lost. The client with IP address A.A.A.A connects to proxy at B.B.B.B, which then makes connection to Evilginx at C.C.C.C. The client IP address in Evilginx is determined from source address of the TCP connection and so B.B.B.B is logged and used in blacklist instead of A.A.A.A. The new config option real_ip_header adds possibility to read information on original client IP address from a specified HTTP header set by the reverse HTTP proxy (e.g. "X-Forwarded-For")