我分析WIN9X协议程序有一段时间了,也建立了一个简单的“WIN9X个人防火墙”,与大家一起分享。现在我主要是改动内核文件实现,等有空做个小程序直接在内存改动,提供选项,随时开关各安全选项功能等,真的成为一个防火墙吧。当然现在这样做也有好处,不需要占用内存。
各位注意:改动文件前请先备份,到时需要可以恢复。
一、 不让别人TCP连接的改法,这可以预防别人登录你的机器,进入共享目录,放TCP的木马控制你等,但你也不能使用FTP了,因为FTP数据回传要有外部连接。
如果用别的HEX编辑软件修改,可以搜索HEX串或者找文件偏移5C56H(从0开始算,注意DEBUG调进去是丛100H开始算)。
同样不让TCP连接,但自己可以使用FTP的改法,这只是简单的判断是20端口连接就放行,别的端口的TCP连接不放行,所以只是简单预防(这样别人用20端口还是可以连接你的TCP服务),不过一般客户端是不能指定端口,也大于1024,所以可以简单的使用。左边是文件偏移,右边是改动后文件与原文件的区别。
1. C:\WIN98\SYSTEM\vtcp.386: 60,257 b字节
2. C:\WIN98\SYSTEM\VTCP.bak: 60,257 b字节
5C3F: 75 74
5C40: E5 0B
5C41: 8B 2B
5C42: 44 C0
5C43: 24 5D
5C44: 4C 5F
5C45: 80 5E
5C46: E4 5B
5C47: 16 83
5C48: 80 C4
5C49: FC 40
5C4A: 02 C3
5C4B: 0F 90
5C4C: 85 8B
5C4D: 97 44
5C4E: 01 24
5C4F: 00 4C
5C50: 00 80
5C51: 8B E4
5C52: 44 16
5C53: 24 80
5C54: 28 FC
5C55: 66 02
5C56: 8B 0F
5C57: 18 85
5C58: 66 8C
5C59: 81 01
5C5A: FB 00
5C5C: 14 6A
5C5D: 75 00
5C5E: EC 6A
5C5F: 90 06
5C60: 6A 8B
5C61: 00 44
5C62: 6A 24
5C63: 06 30
36 差别 发现。
二、关掉IGMP协议的改动办法。IGMP协议有BUG,可以下载补丁。其实对于个人机器IGMP可能用不着,所以可以关掉,这样也可以避免利用以后发现的BUG攻击。找文件VIP。386中HEX码 00 6A 02 E8 改成 00 6A F2 E8就可以了。
三、ICMP协议的改法,也是文件VIP。386中找HEX码,
(1)关掉ICMP协议改法:00 6A 01 E8 改成 00 6A F1 E8,这样使用ICMP协议的都不能使用,别人不能PING你,你也不能PING别人等。
(2)ICMP协议中只让自己PING别人改法:83 F9 11 77 08 改成83 F9 00 75 08 。
(3)ICMP协议中只是不让别人PING的改法:文件偏移D04DH(从0开始,如果是DEBUG调进去,就是D14DH)74 0D 改成90 90。
大家可以参照和自己的需要相应改动。
还有一个应注意的是,NETBIOS就是微软提供共享服务的,可能你上网时不小心就暴露了你的共享,还有可以通过NETBIOS查机器上的用户名等。其实只要稍微注意点就可以配置好,拨号用户拨号的TCP/IP协议上不要绑定微软客户等,我在这上面什么都不绑;对于专线用户嘛,你的专线IP不要绑定微软客户等就可以了。这样外面就不能直接连接NETBIOS,不能得到你的机器名、共享目录等了,所以对外就不用怎么担心了。关键对内要怎么提供方便又要安全。再就是要注意几个漏洞,WINDOWS系统(WIN9X、WINNT)访问别人139时有泄露当前用户名、密码的问题,WIN9X的共享密码校验有漏洞。
(出处:http://www.sheup.com)