<div dir="ltr"><div>I tested this on my end and it seems to work as expected.  I am running Suricata 4.0.4.<br></div><div>I enabled the xff options like you did (for eve.log) and tried both with the extra-data, which in that case the IP was logged to a field with the label "xff", and then with the overwrite.  In my case of using overwrite the flow the alert triggered on was coming from the server side so the destination IP is what is being overwritten.  That makes sense and is described to be the way it should work in the config comments "# HTTP X-Forwarded-For support by adding an extra field or overwriting the source or destination IP address (depending on flow direction)".</div><div><br></div><div>I used cURL to request response with payload that triggers alert:</div><div>curl -i -H "Client-ip: 10.44.44.44" <a href="http://testserver.local:1236/" target="_blank">http://testserver.local:1236/</a><br></div><div><br></div><div>From eve.log when using extra-data mode (bottom of alert entry):</div><div>...</div><div><div>  "packet_info": {</div><div>    "linktype": 1</div><div>  },</div><div>  "xff": "10.44.44.44"</div><div>}</div></div><div><br></div><div>From eve.log when using overwrite (top of alert entry):</div><div><div>{</div><div>  "timestamp": "2018-03-30T09:04:04.923932-<wbr>0500",</div><div>  "flow_id": 2235731331518724,</div><div>  "in_iface": "eth0",</div><div>  "event_type": "alert",</div><div>  "src_ip": "10.0.2.15",</div><div>  "src_port": 1236,</div><div>  "dest_ip": "10.44.44.44",</div><div>  "dest_port": 35629,</div><div>  "proto": "TCP",</div></div><div>...</div><div><br></div><div><br></div><div><br></div><div><br></div><div class="gmail_extra"><div><div class="m_1689054110364244033gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><span style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;white-space:nowrap">-- </span></div><div dir="ltr"><span style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;font-weight:bold;white-space:nowrap">Eric Urban</span><br></div><div dir="ltr"><span style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap">University Information Security | Office of Information Technology | </span><a href="http://it.umn.edu/" style="color:rgb(17,85,204);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap" target="_blank">it.umn.edu</a><br style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap"><span style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap">University of Minnesota | </span><a href="http://umn.edu/" style="color:rgb(17,85,204);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap" target="_blank">umn.edu</a><br style="color:rgb(0,0,0);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap"><a href="mailto:eurban@umn.edu" style="color:rgb(17,85,204);font-family:"Helvetica Neue",Helvetica,sans-serif;font-size:small;line-height:17.29px;white-space:nowrap" target="_blank">eurban@umn.edu</a><font face="verdana, sans-serif" style="color:rgb(136,136,136);font-size:12.8px"><br></font></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote">On Fri, Mar 30, 2018 at 8:59 AM, Duarte Silva <span dir="ltr"><<a href="mailto:duarte.silva@serializing.me" target="_blank">duarte.silva@serializing.me</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="PT"><div class="m_1689054110364244033gmail-m_5624797151687059210WordSection1"><p class="MsoNormal">Hey,</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">What o you mean with “should work well but it is not”? You have the XFF in <span lang="EN-US">overwrite mode, o it should change the source address of the http request in the logging and only in the logging. Is it this that isn't properly working?<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US">Cheers,<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US">Duarte<u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p><div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0cm 0cm"><p class="MsoNormal" style="border:none;padding:0cm"><b>De: </b><a href="mailto:msnriggs@gmail.com" target="_blank">Michael Riggs</a><br><b>Enviado: </b>30 de março de 2018 15:37<br><b>Para: </b><a href="mailto:oisf-users@lists.openinfosecfoundation.org" target="_blank">oisf-users@lists.openinfosecfo<wbr>undation.org</a><br><b>Assunto: </b>[Oisf-users] XFF and alternate HTTP IP header with a proxy</p></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">Morning Suricata peeps,</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">We're having an issue where we cant get our proxy to give us X-Forwarded for, but it'll give Client-ip. It looks like I can mod the Header: X-Forwarded-For field to Header: Client-ip and all should work well, but it's not. First - Am I making a bad assumption that this is supported? Second - help! :-)  <span style="font-size:12pt;font-family:Arial,sans-serif;color:rgb(34,34,34);background:white">See examples below - </span> </p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Mike</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><b>tcpdump of relevant part of HTTP packet</b></p></div><div><p class="MsoNormal">User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36.</p></div><div><p class="MsoNormal">Accept: image/webp,image/apng,image/*,<wbr>*/*;q=0.8.</p></div><div><p class="MsoNormal">DNT: 1.</p></div><div><p class="MsoNormal">Referer: <a href="http://golfweek.com/" target="_blank">http://golfweek.com/</a>.</p></div><div><p class="MsoNormal">Accept-Encoding: gzip, deflate.</p></div><div><p class="MsoNormal">Accept-Language: en-US,en;q=0.9.</p></div><div><p class="MsoNormal"><b>Client-ip: 10.25.8.9.</b></p></div><div><p class="MsoNormal">Via: 1.1 localhost.localdomain .</p></div><div><p class="MsoNormal">Host: <a href="http://dt.adsafeprotected.com" target="_blank">dt.adsafeprotected.com</a>.</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><b>We've modified the suricata.yaml as follows</b></p></div><div><div><p class="MsoNormal">            xff:</p></div><div><p class="MsoNormal">              enabled: yes</p></div><div><p class="MsoNormal">              # Two operation modes are available, "extra-data" and "overwrite".</p></div><div><p class="MsoNormal">              mode: overwrite</p></div><div><p class="MsoNormal">              # Two proxy deployments are supported, "reverse" and "forward". In</p></div><div><p class="MsoNormal">              # a "reverse" deployment the IP address used is the last one, in a</p></div><div><p class="MsoNormal">              # "forward" deployment the first IP address is used.</p></div><div><p class="MsoNormal">              deployment: forward</p></div><div><p class="MsoNormal">              # Header name where the actual IP address will be reported, if more</p></div><div><p class="MsoNormal">              # than one IP address is present, the last IP address will be the</p></div><div><p class="MsoNormal">              # one taken into consideration.</p></div><div><p class="MsoNormal">              header: Client-ip</p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p></div></div><br>______________________________<wbr>_________________<br>
Suricata IDS Users mailing list: <a href="mailto:oisf-users@openinfosecfoundation.org" target="_blank">oisf-users@openinfosecfoundati<wbr>on.org</a><br>
Site: <a href="http://suricata-ids.org" rel="noreferrer" target="_blank">http://suricata-ids.org</a> | Support: <a href="http://suricata-ids.org/support/" rel="noreferrer" target="_blank">http://suricata-ids.org/suppor<wbr>t/</a><br>
List: <a href="https://lists.openinfosecfoundation.org/mailman/listinfo/oisf-users" rel="noreferrer" target="_blank">https://lists.openinfosecfound<wbr>ation.org/mailman/listinfo/<wbr>oisf-users</a><br>
<br>
Conference: <a href="https://suricon.net" rel="noreferrer" target="_blank">https://suricon.net</a><br>
Trainings: <a href="https://suricata-ids.org/training/" rel="noreferrer" target="_blank">https://suricata-ids.org/train<wbr>ing/</a><br></blockquote></div><br></div></div>