狠狠撸

狠狠撸Share a Scribd company logo
python与抓包
演讲?人:余占勇
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
抓包的分类
服务端抓包
客户端抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
客户端抓包
短连接(HTTP)
?长连接 (socket websocket)
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
短连接(HTTP)
1.代理服务器(移动端的HTTP抓包)
burpsuite
Fiddler
基于python的HTTP代理服务器
2.浏览器插件
Firebug
Tamper Data
Live HTTP Headers
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
代理服务器原理
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
python下代理服务器
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
python下代理服务器?示例
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
?长连接(SOCKET)
Windows(均为基于hook)
WPE(Winsock Packet Editor)
封包助?手
Pydotdll(基于python的HOOK引擎)
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
hook原理
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
Pydotdll
1.基于python的hook引擎,hook代码
全为python脚本
2.通过装饰器参数,传?入函数名和导出
dll?文件名,能hook任意Windows Api函
数。
3.常?用来对游戏服务器,聊天服务器稳
定性测试,防刷币,防外挂等。
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
Pydotdll?示例
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
?长连接(SOCKET)
linux
tcpdump
wireshark
tshark
ngrep
tcpflow
urlsnarf
基于python的netfilter抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
netfilter原理
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
python下netfilter抓包
1.设置过滤抓取socket包的条件:
e.g:iptables -A OUTPUT -d 8.8.8.8 -p tcp -j NFQUEUE
2.利?用python的nfqueue模块读取
nfqueue队列
3.可修改要发送数据socket的数据内容
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
netfilter抓包?示例
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
移动端下的抓包
HTTP连接
1.移动端同?一局域??网下架设?一代理服务
器
2.在Wifi处设置代理
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
移动端下的抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
移动端下的抓包
socket?长连接
1.windows
windows主机安装genymotion模拟
器,注?入genymotion进程,抓取修改
封包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
移动端下的抓包
socket?长连接
2.linux
创建?一个AP信号抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
移动端下的抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
创建wifi信号抓包
材料:
usb?无线??网卡,ubuntu,hostapd
利?用hostapd创建wifi信号 移动端来连
接此wifi信号,?用linux下抓取SOCKET
的?方法来抓取SOCKET包。
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
服务器端抓包
tcpdump
wireshark
tshark
ngrep
tcpflow
urlsnarf
tshark -R "http.request" —i eth1 -T fields -E
separator=“|” -e ip.src -e tcp.srcport -e ip.dst -e
tcp.dstport -e http.request.method -e http.request -e
http.host -e http.request.uri -e http.user_agent -e
http.content_type -e http.content_length
tshark -R "http.request" -T fields -e text
北京/上海/??广州 0xFF Life's pathetic, go Pythonic! 25
服务器端抓包
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
对于我
余占勇
QQ:343032105
相关代码:https://github.com/
cngeeker/pycon2015
北京/上海/??广州 0xFF Life's pathetic, go Pythonic!
其它
Q&A

More Related Content

笔测迟丑辞苍与抓包