这几天有做天枢CTF的“Are you in class”的题目,虽然以前了解过XFF,但还是没有很好地应用,而且最后居然掉进了一个大坑,且听我细细讲来。
 
打开题目,首先有个提示“在不在学校主要看IP,192的某内网段”,先放着。
 
1.直接登录网站。
    随便输入信息,点击【提交】按钮。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
XFF的学习+修改源码--Are you in  class-LMLPHP
    发现弹窗,emmmmmmm,赶紧看源码。
 
2.分析及修改源码。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
    可见点击【提交】按钮会调用check()函数,查看它。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
    此函数功能不得了,死循环哪。
    ok,看见没,源码中隐藏了一个按钮代码,取消注释。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
    随便输入内容,点击上方【提交】按钮。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
    提示不在班里,如下图。
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
想到了原题的提示“在不在学校主要看IP,192的某内网段 ”,是时候改变发送IP了,嘻嘻。
 
3.XFF 神功。
    "XFF”即“X-Forwarded-For”字段,设置此字段可以伪造IP地址,这样部分服务器会认为是客户端经过代理访问自己,而其真实IP即为伪造IP地址。
 
4.代理加XFF字段。
    此字段在头部增加即可生效。按照上述步骤操作,burpsuite拦截到后,添加XFF=192.168.1.1(此处巨坑就是我当初尝试遍历192.x.x.x,出不了结果,其实按照常规想法多尝试几次就行了)。如下图所示
XFF的学习+修改源码--Are you in  class-LMLPHP

XFF的学习+修改源码--Are you in  class-LMLPHP
    点击【Forward】,即可见flag,棒棒哒-。-
XFF的学习+修改源码--Are you in  class-LMLPHP
 
05-08 08:12