HTTP内容篡改实践

编程入门 行业动态 更新时间:2024-10-11 03:19:07

HTTP<a href=https://www.elefans.com/category/jswz/34/1771374.html style=内容篡改实践"/>

HTTP内容篡改实践

HTTP内容篡改实践

读完了《图解HTTP》。虽说是一本很轻的书,可后面一章讲的各种攻击让人手痒痒。下面模拟一些不良运营商的做法,给普通http网页加上小广告。

首先,用软件模拟运营商路由器层面的http转发。
为了快速实现http转发,网上找一个http的代理服务器即可。直接搜‘’python http agent server“,找到一个很好用的代理服务器 proxpy,可以自己编写插件来改写http的request、response,正是想要的软件。svn checkout下来后,参照proxpy的说明,运行命令

$ ./proxpy.py -x plugins/changeagent.py 
[*] <b73986c0> Server 0.0.0.0 listening on port 8080

运行后,即在本地启动了一个代理服务器,默认host为0.0.0.0,port 为8080。

然后,浏览器设置代理服务器为上面创建的那个本地代理服务器。
浏览器代理服务器设置方式有很多,推荐用浏览器插件,方便快捷。浏览器代理服务器插件可以在浏览器应用商店中找到。chrome可以安装浏览器代理插件SwitchySharp。在SwitchySharp中创建一个代理模式,设置http代理,代理host为0.0.0.0,port为8080(与上面启动的本地代理服务器参数一致)。

最后,根据自己的想法篡改网页。
改写changeagent.py里的处理response的过程,篡改response。例如用下面的代码把所有js脚本后面加上alert(1).


def proxy_mangle_request(req):req.setHeader("User-Agent", "ProxPy Agent")return reqdef proxy_mangle_response(res):res.body=res.body.replace("</script>",";alert(1)</script>")print res.bodyreturn res

处的时候需要注意原来的response是否使用了内容压缩和内容的编码方式,否则replace可能匹配不到。


更多推荐

HTTP内容篡改实践

本文发布于:2024-03-10 09:48:25,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1727636.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:内容   HTTP

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!