网络安全参考 | UNIX参考 | GPS参考 | 无线参考 | 在线手册 | OSBUG.ORG | SUNNY-NETWORK.COM
网站地图 RSS订阅
高级搜索 收藏本站
Home | 业界动态 | 防火墙 | IDS/IPS | VPN | PKI | Honeypot | Hacker/Intruder | 黑客技术 | 破解技术 | 加密技术 | 病毒防护 | 木马 | 反垃圾邮件 | 反流氓软件 | 漏洞 | 无线安全 | UNIX | Windows | 安全编程 | 安全软件 | TPM/TCG | 数据恢复 | 企业信息安全 | 个人信息安全
 当前位置: Home > 安全编程 > 网络编程 > 文章  
原始套接字透析之综合实例:网络黑手
文章来源: 天极开发 文章作者: 宋宝华 发布时间: 2006-11-17   字体: [ ]
 

 {
  if (!mmac[0] && !mmac[1] && !mmac[2] && !mmac[3] && !mmac[4] && !mmac[5])
  {
   SendArpReq(1, myip, mmac);
   return ;
  }
  sthread = CreateThread(NULL, 0, CheckHost, 0, 0, 0);
  SetTimer(1, 7 *(toip - fromip), NULL); //启动定时器
 }

 if (WaitForSingleObject(sthread, 0) != WAIT_OBJECT_0)
 {
  return ;
 }

 //test using self host
 /* hostList[currentHstIndex].sniffer = 1;
 hostList[currentHstIndex].ipConflict = 0;
 hostList[currentHstIndex].arpCheat = 0;
 hostList[currentHstIndex].ip = htonl(myip);
 hostList[currentHstIndex].ipConflict = 1;
 hostList[currentHstIndex].arpCheat = 1;
 memcpy(hostList[currentHstIndex].mac,mmac,6);
 currentHstIndex++;
 */

 int i, j;
 for (i = 0; i < currentHstIndex; i++)
 {
  for (j = 0; j < oldHstIndex; j++)
  {
   if (oldHostList[j].ip == hostList[i].ip)
   {
    hostList[i].sniffer = oldHostList[j].sniffer;
    hostList[i].ipConflict = oldHostList[j].ipConflict;
    hostList[i].arpCheat = oldHostList[j].arpCheat;
    break;
   }
  }
 }

 SetTimer(1, 20000, NULL);
 for (i = m_hostList.nVWndPos / 13, j = 0; i < currentHstIndex; i++, j++)
 {
  CString str;

  m_hostList.SetText(j + 1, 0, inet_ntoa(*(struct in_addr*)(&(hostList[i].ip))
 ));

 if (hostList[i].sniffer == 0)
  m_hostList.SetText(j + 1, 2, "OFF");
 else
  m_hostList.SetText(j + 1, 2, "ON");

 str.Format("%02x-%02x-%02x-%02x-%02x-%02x", hostList[i].mac[0],
 hostList[i].mac[1], hostList[i].mac[2], hostList[i].mac[3],
 hostList[i].mac[4], hostList[i].mac[5]);
 m_hostList.SetText(i + 1, 1, str);

 if (hostList[i].arpCheat == 0)
  m_hostList.SetText(j + 1, 3, "OFF");
 else
  m_hostList.SetText(j + 1, 3, "ON");
 if (hostList[i].ipConflict == 0)
  m_hostList.SetText(j + 1, 4, "OFF");
 else
  m_hostList.SetText(j + 1, 4, "ON");
}
for (; j < 31; j++)
{
 for (int k = 0; k < 5; k++)
 m_hostList.SetText(j + 1, k, "");
}
m_hostList.Invalidate();

unsigned char mac[6];
memcpy(mac, mmac, 4);

 
推荐文章
·洪水攻击原理及代码实现全攻略(
·原始套接字透析之实现IP地址欺骗
·原始套接字透析之ARP欺骗
·原始套接字透析之实现包分析
·原始套接字透析之实现sniffer
·原始套接字透析之实现路由欺骗
·原始套接字透析之ICMP拒绝服务攻
·原始套接字透析之实现Ping
·原始套接字透析之Raw Socket基础
·黑客之旅 -- 原始套接字透析之前
 

 
共15页: 上一页 [1] [2] [3] [4] [5] [6] [7] [8] 9 [10] [11] [12] [13] [14] [15] 下一页
↑返回顶部   打印本页   关闭窗口↓  

Google
 
Web oldhand.org unixreference.net meshmea.org
热点文章
·原始套接字透析之Raw So
·原始套接字透析之ARP欺
·洪水攻击原理及代码实现
·原始套接字透析之实现Pi
·黑客之旅 -- 原始套接字
·原始套接字透析之实现路
·原始套接字透析之实现包
·原始套接字透析之ICMP拒
相关分类
相关文章
·洪水攻击原理及代码实现
·原始套接字透析之实现IP
·原始套接字透析之ARP欺
·原始套接字透析之实现包
·原始套接字透析之实现sn
·原始套接字透析之实现路
·原始套接字透析之ICMP拒
·原始套接字透析之实现Pi
更多...
 
 

Copyright(c) 2001-2008 OLDHAND ORGANIZATION, All Rights reserved.
Power by DedeCms 织梦内容管理系统
$Id: article_article.html,v 1.3 2007/02/10 12:00:37 yjs Exp $