【软件简介】:冰盾防火墙是全球第一款具备IDS入侵检测功能的专业级抗DDOS防火墙,来自IT技术世界一流的美国硅谷,由华人留学生Mr.Bingle Wang和Mr.Buick Zhang设计开发,采用国际领先的生物基因鉴别技术智能识别各种DDOS攻击和黑客入侵行为,防火墙采用微内核技术实现,工作在系统的最底层,充分发挥 CPU的效能,仅耗费少许内存即获得惊人的处理效能。经高强度攻防试验测试表明:在抗DDOS攻击方面,工作于100M网卡冰盾约可抵御每秒25万个 SYN包攻击,工作于1000M网卡冰盾约可抵御160万个SYN攻击包;在防黑客入侵方面,冰盾可智能识别Port扫描、Unicode恶意编码、 SQL注入攻击、Trojan木马上传、Exploit漏洞利用等2000多种黑客入侵行为并自动阻止。冰盾防火墙的主要防护功能如下:
★ 阻止DOS攻击:TearDrop、Land、Jolt、IGMP Nuker、Boink、Smurf、Bonk、BigPing、OOB等数百种。
★ 抵御DDOS攻击:SYN/ACK Flood、UDPFlood、ICMP Flood、TCP Flood等所有流行的DDOS攻击。
★ 拒绝TCP全连接攻击:自动阻断某一IP对服务器特定端口的大量TCP全连接资源耗尽攻击。
★ 防止脚本攻击:专业防范ASP、PHP、PERL、JSP等脚本程序的洪水式Flood调用导致数据库和WEB崩溃的拒绝服务攻击。
★ 对付DDOS工具:XDOS、HGOD、SYNKILLER、CC、GZDOS、PKDOS、JDOS、KKDOS、SUPERDDOS、FATBOY、SYNKFW等数十种。
★ 超强Web过滤:过滤URL关键字、Unicode恶意编码、脚本木马、防止木马上传等。
★ 侦测黑客入侵:智能检测Port扫描、SQL注入、密码猜测、Exploit利用等2000多种黑客入侵行为并阻断。
┥冰盾5.2:100%解决SYNFlood攻击,100%防护单IP多连接攻击,无效立即退款!
┥冰盾5.2:专业抵御“传奇克星”和“CC变种”攻击器,彻底解决针对 游戏7000端口的刷端口攻击!
冰盾适合防护的服务器种类:
============================
>>专业防护网站服务器
>>专业防护游戏服务器
>>专业防护音乐服务器
>>专业防护电影服务器
>>专业防护聊天服务器
>>专业防护论坛服务器
【保护方式】:注册码 + 续防护2小时试用限制
【加密保护】:UltraProtect 1.x -> RISCO Software Inc
【编译语言】:Microsoft Visual C++ 7.0
【调试环境】:WinXP-sp2、PEiD、Ollydbg、ImportREC
【破解目的】:学习使用Ollydbg手动脱壳
【详细过程】
PEID查看,壳为UltraProtect 1.x -> RISCO Software Inc.进入实战:
1、载入加壳软件:
00516000 > $ 60 PUSHAD ; 壳入口点
00516001 . 50 PUSH EAX
00516002 . E8 01000000 CALL ybdfw.00516008
00516007 .- 79 83 JNS SHORT ybdfw.00515F8C
00516009 . C40458 LES EAX,FWORD PTR DS:[EAX+EBX*2] ; 段寄存器更改
0051600C . 78 03 JS SHORT ybdfw.00516011
0051600E . 79 01 JNS SHORT ybdfw.00516011
00516010 . 79 4F JNS SHORT ybdfw.00516061
00516012 . E8 01000000 CALL ybdfw.00516018
00516017 .- 7D 83 JGE SHORT ybdfw.00515F9C
00516019 . C40485 C1E801>LES EAX,FWORD PTR DS:[EAX*4+1E8C1] ; 段寄存器更改
00516020 . 0000 ADD BYTE PTR DS:[EAX],AL
00516022 .- 79 83 JNS SHORT ybdfw.00515FA7
00516024 . C40473 LES EAX,FWORD PTR DS:[EBX+ESI*2] ; 段寄存器更改
00516027 ? 01F9 ADD ECX,EDI
00516029 > 50 PUSH EAX
0051602A . E8 01000000 CALL ybdfw.00516030
0051602F .- 7E 83 JLE SHORT ybdfw.00515FB4
00516031 . C40458 LES EAX,FWORD PTR DS:[EAX+EBX*2] ; 段寄存器更改
00516034 . 8BFA MOV EDI,EDX
00516036 . E8 01000000 CALL ybdfw.0051603C
0051603B .- 79 83 JNS SHORT ybdfw.00515FC0
0051603D . 04 24 ADD AL,24
0051603F . 06 PUSH ES
00516040 . C3 RETN
00516041 . C1C0 CA ROL EAX,0CA ; 移位常量超出 1..31 的范围
00516044 . E8 01000000 CALL ybdfw.0051604A
00516049 .- EB 83 JMP SHORT ybdfw.00515FCE
0051604B . C4040F LES EAX,FWORD PTR DS:[EDI+ECX] ; 段寄存器更改
0051604E ? 8A02 MOV AL,BYTE PTR DS:[EDX]
00516050 ? 0000 ADD BYTE PTR DS:[EAX],AL
00516052 ? 0085 F9E80100 ADD BYTE PTR SS:[EBP+1E8F9],AL
00516058 . 0000 ADD BYTE PTR DS:[EAX],AL
2、ALT+M打开内存镜像,CODE断下内存访问断点,
内存映射, 条目 20
地址=00401000
大小=0007E000 (516096.)
属主=ybdfw 00400000
区段=.text
包含=代码
类型=Imag 01001002
访问=R
初始访问=RWE
F9运行:
00528583 . F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[> 停在这里
00528585 . 58 POP EAX
00528586 . 50 PUSH EAX ; /Arg2
00528587 . FFB5 4AF84000 PUSH DWORD PTR SS:[EBP+40F84A] ; |Arg1
0052858D . E8 2C4C0000 CALL ybdfw.0052D1BE ; \ybdfw.0052D1BE
00528592 . FFB5 4AF84000 PUSH DWORD PTR SS:[EBP+40F84A]
00528598 . FF95 03FD4000 CALL DWORD PTR SS:[EBP+40FD03]
0052859E . 5E POP ESI
0052859F . 83C6 08 ADD ESI,8
005285A2 .^ EB B1 JMP SHORT ybdfw.00528555
005285A4 > 5E POP ESI
005285A5 . 68 30750000 PUSH 7530
005285AA . 6A 40 PUSH 40
005285AC . FF95 FFFC4000 CALL DWORD PTR SS:[EBP+40FCFF]
3、ALT+M再次打开内存镜像,DATA断下内存写入断点,
内存映射, 条目 21
地址=0047F000
大小=0001D000 (118784.)
属主=ybdfw 00400000
区段=.rdata
包含=代码,数据
类型=Imag 01001002
访问=R
初始访问=RWE
F9运行:
0052A481 > /8B46 0C MOV EAX,DWORD PTR DS:[ESI+C] 停在这里
0052A484 . |0BC0 OR EAX,EAX
0052A486 . |0F84 25020000 JE ybdfw.0052A6B1
0052A48C . |8366 0C 00 AND DWORD PTR DS:[ESI+C],0
0052A490 . |03C2 ADD EAX,EDX
0052A492 . |8BD8 MOV EBX,EAX
0052A494 . |56 PUSH ESI
0052A495 . |57 PUSH EDI
0052A496 . |50 PUSH EAX
0052A497 . |8BF3 MOV ESI,EBX
0052A499 . |8BFB MOV EDI,EBX
0052A49B > |AC LODS BYTE PTR DS:[ESI]
0052A49C . |C0C0 03 ROL AL,3
0052A49F . |AA STOS BYTE PTR ES:[EDI]
0052A4A0 . |803F 00 CMP BYTE PTR DS:[EDI],0
0052A4A3 .^|75 F6 JNZ SHORT ybdfw.0052A49B
0052A4A5 . |58 POP EAX
0052A4A6 . |5F POP EDI
0052A4A7 . |5E POP ESI
0052A4A8 . |50 PUSH EAX
4、ALT+M三次打开内存镜像,重新在CODE断下内存访问断点,
F9运行,
停在OEP处:
00457CEF . 6A 60 PUSH 60 ; OEP
00457CF1 . 68 983E4800 PUSH ybdfw.00483E98
00457CF6 . E8 B9320000 CALL ybdfw.0045AFB4
00457CFB . BF 94000000 MOV EDI,94
00457D00 . 8BC7 MOV EAX,EDI
00457D02 . E8 99300000 CALL ybdfw.0045ADA0
00457D07 . 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP
00457D0A . 8BF4 MOV ESI,ESP
00457D0C . 893E MOV DWORD PTR DS:[ESI],EDI
00457D0E . 56 PUSH ESI
00457D0F . FF15 D4F24700 CALL DWORD PTR DS:[47F2D4] ; kernel32.GetVersionExA
00457D15 . 8B4E 10 MOV ECX,DWORD PTR DS:[ESI+10]
00457D18 . 890D 380E4A00 MOV DWORD PTR DS:[4A0E38],ECX
00457D1E . 8B46 04 MOV EAX,DWORD PTR DS:[ESI+4]
00457D21 . A3 440E4A00 MOV DWORD PTR DS:[4A0E44],EAX
00457D26 . 8B56 08 MOV EDX,DWORD PTR DS:[ESI+8]
00457D29 . 8915 480E4A00 MOV DWORD PTR DS:[4A0E48],EDX
00457D2F . 8B76 0C MOV ESI,DWORD PTR DS:[ESI+C]
00457D32 . 81E6 FF7F0000 AND ESI,7FFF
00457D38 . 8935 3C0E4A00 MOV DWORD PTR DS:[4A0E3C],ESI
00457D3E . 83F9 02 CMP ECX,2
00457D41 . 74 0C JE SHORT ybdfw.00457D4F
00457D43 . 81CE 00800000 OR ESI,8000
00457D49 . 8935 3C0E4A00 MOV DWORD PTR DS:[4A0E3C],ESI
00457D4F > C1E0 08 SHL EAX,8
00457D52 . 03C2 ADD EAX,EDX
5、用OllyDump脱壳,然后关掉Ollydbg
6、运行源程序,打开ImportREC修复
在ImportREC中附加刚运行程序进程,将OEP修改为57cef,自动查找IAT->获取输入表-〉显示无效函数,用跟踪级别3修复无效函数
然后用修复转存文件修复我们脱出来的文件
脱壳后运行正常
【求助】
另外:在破解过程中发现有一些代码还是加密的,请教各位高人,这个该怎么处理
[注意]看雪招聘,专注安全领域的专业人才平台!