首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在C#中实现所有端口扫描技术/在C#中创建原始低级别数据包

在C#中实现所有端口扫描技术/在C#中创建原始低级别数据包
EN

Stack Overflow用户
提问于 2010-01-04 18:35:06
回答 2查看 8.4K关注 0票数 6

我正试图用C#编写一个端口扫描器。我对端口扫描方法做了一些研究。

如果您感兴趣,以下是我发现有用的链接:

  1. http://www.cs.wright.edu/~pmateti/InternetSecurity/Lectures/Probing/index.html ^PPT演示^
  2. scanning.asp
  3. (旧) NMAP -端口扫描的艺术:doc.html
  4. 端口扫描技术:http://nmap.org/book/man-port-scanning-techniques.html
  5. 端口扫描交互示例:http://www.osischool.com/concept/communication/port-scanning

来问我的问题。这些是端口扫描方法:

  1. TCP Connect()扫描
  2. TCP SYN扫描
  3. TCP FIN扫描
  4. TCP XMAS扫描
  5. TCP空扫描
  6. TCP窗口扫描
  7. UDP扫描

但我只实现了TCP Connect() Scan(如这里所示)。但是这是非常慢的(测试每个端口需要>0.5秒)。为了实现其余的方法,我需要数据包级别的访问。我需要创建原始数据包。在C#中可以这样做吗?如果是这样的话,怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2010-01-04 18:52:34

当我很久以前使用这个伟大的WinPCap库时,它似乎是一个很好的包装器:

http://sourceforge.net/projects/sharppcap/

我肯定现在好多了。

票数 2
EN

Stack Overflow用户

发布于 2010-01-04 18:41:01

您必须有一个驱动程序(NDIS)或类似的东西来访问原始数据包。您还可能需要使用本机Win32 API和使用P/Invoke。

以下是一些有用的东西:http://www.codeproject.com/KB/IP/sendrawpacket.aspx

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2001300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档