免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2082 | 回复: 0
打印 上一主题 下一主题

[C] wpa2测试碰到的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2017-11-21 02:54 |只看该作者 |倒序浏览
本帖最后由 kdx_test 于 2017-11-22 20:54 编辑

最近在测试 wpa2的程序,具体如下:

============
client部分:
============

STA:程序实现
AP:测试用的无线路由器

程序实现的内容:
probe_request
authentication_request
association_request
handshake_message_2
handshake_message_4

测试过程:
4次握手完成,发送 broadcast_frame 和 dns_udp_packet 都得到“测试用的无线路由器”的回应,在wireshark中的解密看到数据包。

过程描述:
我自己写的数据包,在程序中是可以正常发送的,但如果是使用“浏览器(如:firefox)”打开某个网址(比如:www.163.com),则不能得到正确的回应,具体点,通过wireshark,没发现浏览器的数据包。换种方式,不用我的程序,使用ubuntu自带的wifi客户端(即ubuntu界面右上角的wifi选择程序,选择“测试用的路由器的ssid”),则,浏览器的数据包可以成功发送到“测试用的路由器”处,并成功上网。

即:
通道1:ubuntu自带的wifi客户端  ——> 测试用的路由器
通道2:我写的程序(client部分)——> 测试用的路由器

上面的问题可以简单概括为:对于浏览器的输出(比如生成的 http 数据包),在只有“通道2”的情况下,它不会走“通道2”。

问题 1:
之后的测试我发现,问题的根本是我写的程序(client部分)并没有获得 浏览器输出的 http数据包,我想请教:在linux下,如何获得“浏览器输出的数据包”?

============
server部分:
============

STA:测试用的android手机
AP:程序实现

程序实现的内容
beacon
probe_response
authentication_response
association_response
handshake_message_1
handshake_message_3

测试过程:
4次握手完成,发送 arp_request_frame(单播) 给STA是成功的(在wireshark中的解密看到数据包),但是 STA 没回应。

过程描述:


================================================
STA                                                                                 AP
----------------------------------------------------------------------------
              —— handshake_mesg_4 ——>
             <—————  ack   ————————
             ———— null function ————>
             <—— action response ————                                备注1
             ————action delete ————>                               备注2
================================================

备注1:03 01 73 00 00 02 02 00 00(Action code: Add Block Ack Response (0x01))
备注2:03 02 00 08 26 00(Action code: Delete Block Ack (0x02))

对于 action delete,wireshark的注解:Reason code: Requested from peer STA as the STA received frames using the mechanism for which a setup is required (0x0026)


问题 2:
使用测试用的android手机(STA),通过它自带的wifi连接程序,选择“测试用的ssid”(beacon frame),通过 wireshark的监测,4次握手是成功的,但后面发送 arp_request后“没有”获得STA的 arp_reply,且STA发来的action delete,似乎连接并未建立(但是wireshark的监测是可以解密我的arp_request数据包的,且STA也发来了 handshake_mesg4),为何?

补充:
1、曾怀疑过与 beacon interval 相关(我在 beacon frame 中设定是100ms,连接上来的 STA也是100ms),但我调试了很多的值(usleep(微秒数)),但结果依旧,有时甚至连不上
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP