|
[原创]自己动手给被艾尼(ANI)病毒感染的EXE除毒
好,先学习学习 |
|
[注意]看雪也有木马!!!!
不管有没有,永远支持看雪 |
|
|
|
|
|
[求助]ResHacker 添加菜单的问题...
程序运行时将该项菜单删掉了或隐藏了 |
|
[求助]ResHacker 添加菜单的问题...
你没有添加菜单的功能代码吧,VC程序中,没有功能代码的菜单是灰色的。 |
|
[己解决]为何OD无法调试程序???急啊
还是老大历害!!!问题终于解决了,并且还帮我杀了一个病毒,多谢!!! 确如老大所述,我机子只要运行exe文件,就会被注入一个hookdll.dll,而10002073这个地址正是处于hookdll.dll这个模块中,一怒之下,先将这个文件更名,再运行程序,全部OK。 用IceSword查看,发现隐藏了一个rising.exe进程。上网一搜,竟然是刚出世的一个病毒,还没有专杀工具。经过一番艰难手工拼杀,终于将这个病毒干掉了。 再次感谢老大!!! |
|
[求助]如何追踪病毒文件的原始位置?
多谢cyto大哥指点,给了我一点启发,第一种方式对于我这菜鸟好像有点难度。不过,下次我碰到此类病毒时,会试试直接分析它,多谢。 |
|
[己解决]为何OD无法调试程序???急啊
难道只有我才碰到这个问题吗??? |
|
[己解决]为何OD无法调试程序???急啊
按照老大指点,我用MASM32写了一个最简单的测试程序: .386 .model flat, stdcall option casemap :none include windows.inc include kernel32.inc include user32.inc includelib kernel32.lib includelib user32.lib .code start: invoke MessageBox,NULL,NULL,NULL,MB_OK invoke ExitProcess,0 end start 这个程序就只是弹出一个消息框,按理说,应该不会产生“非法内存访”的问题了吧,结果依然如此,OD反汇编如下: 00401000 >/$ 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL 00401002 |. 6A 00 PUSH 0 ; |Title = NULL 00401004 |. 6A 00 PUSH 0 ; |Text = NULL 00401006 |. 6A 00 PUSH 0 ; |hOwner = NULL 00401008 |. E8 0D000000 CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA 0040100D |. 6A 00 PUSH 0 ; /ExitCode = 0 0040100F \. E8 00000000 CALL <JMP.&kernel32.ExitProcess> ; \ExitProcess 00401014 .- FF25 00204000 JMP DWORD PTR DS:[<&kernel32.ExitProcess>; kernel32.ExitProcess 0040101A $- FF25 08204000 JMP DWORD PTR DS:[<&user32.MessageBoxA>] ; user32.MessageBoxA 用OD跟进去,发现是在调用User32.MessageBox时出现了问题,进一步跟进去,发现是在ntdll模块中进行如下调用出现问题: 77F635C2 E8 05000000 CALL ntdll.77F635CC 进一步跟踪,OD异常时,程序此时代码如下: 10002010 55 PUSH EBP 10002011 8BEC MOV EBP,ESP 10002013 6A FF PUSH -1 10002015 68 80A10010 PUSH 1000A180 1000201A 68 283C0010 PUSH 10003C28 1000201F 64:A1 00000000 MOV EAX,DWORD PTR FS:[0] 10002025 50 PUSH EAX 10002026 64:8925 0000000>MOV DWORD PTR FS:[0],ESP 1000202D 83EC 5C SUB ESP,5C 10002030 53 PUSH EBX 10002031 56 PUSH ESI 10002032 57 PUSH EDI 10002033 8965 E8 MOV DWORD PTR SS:[EBP-18],ESP 10002036 C745 E4 0100000>MOV DWORD PTR SS:[EBP-1C],1 1000203D 9B WAIT 1000203E C745 FC 0000000>MOV DWORD PTR SS:[EBP-4],0 10002045 C745 CC 0000000>MOV DWORD PTR SS:[EBP-34],0 1000204C C745 D0 00408F4>MOV DWORD PTR SS:[EBP-30],408F4000 10002053 C745 C4 0000008>MOV DWORD PTR SS:[EBP-3C],80000000 1000205A C745 C8 123B2C4>MOV DWORD PTR SS:[EBP-38],412C3B12 10002061 C745 DC 0200000>MOV DWORD PTR SS:[EBP-24],2 10002068 B8 24602337 MOV EAX,37236024 ;注意EAX值 1000206D 8945 D4 MOV DWORD PTR SS:[EBP-2C],EAX 10002070 8945 D8 MOV DWORD PTR SS:[EBP-28],EAX 10002073 C700 08000000 MOV DWORD PTR DS:[EAX],8 ;此处产生非法内存访问 10002079 9B WAIT 1000207A EB 09 JMP SHORT 10002085 1000207C B8 01000000 MOV EAX,1 10002081 C3 RETN 也就是在往37236024这个地址上写数据时,出现了非法内存访问,这段代码看不明白,而且更不明白的是,OD窗口标题栏上显示这段代码位于主线程上,但也没显示出模块名称! 这段代码地址和主线程的代码地址相隔很远,怎么还是处于主线程上呢? 请高手解惑!!! |
|
[求助]dll文件是用什么软件制作的?
Dll文件可以用MASM32、VC制作 |
|
[己解决]为何OD无法调试程序???急啊
多谢看雪老大指点,忽略所有的异常后,OD就可以让程序跑起来了,再进一步调查,发现只要选中调试选项/异常里面的[非法访问内存]就可以了。 但我不明白的是:我自编的程序很简单,不会存在[非法内存访问]的问题,在OD里面为什么会出现这个问题? 我开始还以为是OD汉化版的的Bug,就到OD网站下载了一个英文版的,运行同样会现现[非法内存访问]的问题。 恳求进一步指点:[非法内存访问]的问题是如何产生的,如何从根本上解决这个问题? |
|
|
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值