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

  arp.arp_tha[i]=0x00;
 }

 memset(sendbuf,0,sizeof(sendbuf));
 memcpy(sendbuf,&eth,sizeof(eth));
 memcpy(sendbuf+sizeof(eth),&arp,sizeof(arp));

 PacketInitPacket(lppackets,sendbuf,sizeof(eth)+sizeof(arp));
 if(PacketSendPacket(lpadapter,lppackets,TRUE)==FALSE)
 {
  AfxMessageBox("PacketSendPacket in SendArpReq Error");
 }
}

  双击表格中控制Sniffer、ARP欺骗和IP地址重复的栏目,需要变换其中的显示内容,要么从"ON"到"OFF",要么从"OFF"到"ON"(当然,主机数据结构中的控制属性也要随之而改变),相关的代码为:

void XTable::OnLButtonDblClk(UINT nFlags, CPoint point)
{
 HitTest(point, focusRow, focusCol);

 SetFocus();
 CString str = GetText(focusRow, focusCol);
 if (str == "ON")
 {
  SetText(focusRow, focusCol, "OFF");
  switch (focusCol)
  {
   case 2:
    oldHostList[focusRow - 1+nVWndPos / 13].sniffer = 0;
    break;
   case 3:
    oldHostList[focusRow - 1+nVWndPos / 13].arpCheat = 0;
    break;
   case 4:
    oldHostList[focusRow - 1+nVWndPos / 13].ipConflict = 0;
    break;
   default:
    break;
  }
 }
 else if (str == "OFF")
 {
  SetText(focusRow, focusCol, "ON");
  switch (focusCol)
  {
   case 2:
    oldHostList[focusRow - 1+nVWndPos / 13].sniffer = 1;
    break;
   case 3:
    oldHostList[focusRow - 1+nVWndPos / 13].arpCheat = 1;
    break;
   case 4:
    oldHostList[focusRow - 1+nVWndPos / 13].ipConflict = 1;
    break;
   default:
    break;
  }
 }

 Invalidate();
 CWnd::OnLButtonDblClk(nFlags, point);
}

  上述代码中的HitTest()调用比较关键,用于获得当前选中的行和列,我们来看看相关的代码:

bool XTable::HitTest(CPoint point, int &row, int &col)
{
 for (int i = 0; i < rows; i++)
 {
  for (int j = 0; j < rows; j++)
  {
   RECT rect = GetRect(i, j);
   if (rect.top <= point.y && rect.bottom > point.y && rect.left <= point.x && rect.right > point.x)
   {
    row = i;
    col = j;

 
推荐文章
·洪水攻击原理及代码实现全攻略(
·原始套接字透析之实现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 $