第十一周-周报
研究进度
阅读论文:Single-Packet OS Fingerprinting
操作系统的识别经过了几个阶段。
- 最开始的操作系统指纹识别基于应用程序的banner抓取,但是现在越来越多的程序会修改banner或者干脆不提供banner,导致这种方法可用性降低
- Multiple Packets,nmap工具出现,提出了基于TCP/IP协议栈来进行操作系统的指纹识别,nmap总是希望目标主机接收tcp连接,如果请求的是一个关闭的udp端口,目标主机会响应icmp unreachable,或者是回复ping。但是多包扫描可能会出现问题,负载均衡是现在非常常用的技术,多包探测可能会导致指纹混乱。
- 单包探测:单包探测在传统的TCP/IP数据包上提取特征的基础上,还考虑了利用操作系统超时重传算法来区分操作系统,因为不同操作系统可能使用了不同的超时重传算法。
常见的阻止操作系统识别的方法
- windows下可以通过调整注册表来修改网络通信的一些参数,使TCP/IP上的部分特征变得不可靠。
- 还有一些其他方法,基本原理都是修改参数来变更网络传输的参数
单包操作系统识别的难点
- 复杂的广域网环境将导致RTO的值并不准确
- 单包本身包含的目标主机的信息有限
- 用户对特征信息的修改
论文的贡献
- 作者研究网络延迟和损失对测量样本的影响,分析现有的方法,并且假设分类问题是可处理的。
- 开发了解决延迟抖动,数据包丢失,和用户对SYN-ACK特性的修改的新方法,创建了一种分类方法,显著提高了现有技术的准确性,包括在模拟网络或者是在真实互联网上。
文中利用了很多的条件概率来尝试解决各种场景下的问题,提出了很多的假设条件,具体的还有待更进一步理解。
学习进度
- 学习了神经网络,了解了GAN,并尝试跑了实验。