![]() |
|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() ![]() |
|
主題工具 | 顯示模式 |
![]() |
#1 |
註冊會員
|
![]() 以下是我用PEiD檢測工具所出現的殼。
PEncrypt 3.1 Final -> junkcode 用了好幾款脫殼工具都沒辦法成功脫殼,這種殼我沒見過,或許是我見識淺薄吧~幫幫忙吧~ ![]() Morphine 1.2 - 1.3 -> rootkit 用了好幾款脫殼工具都沒辦法成功脫殼,這種殼我是第一次看到,束手無策~ ![]() ASProtect 2.1x SKE -> Alexey Solodovnikov 這種殼我用Asprotect Stripper 2.03脫殼工具也沒辦法成功脫殼 ![]() 以上這三種殼我都用過RL!dePacker 1.41 通用脫殼機 手動輸入OEP來脫脫看,但結果一樣失敗~ 有哪位脫殼高手知道這三種殼怎麼脫?或者有什麼工具可以脫呢? 此帖於 2007-09-15 08:25 AM 被 mini 編輯. 原因: 題旨請簡單扼要 |
![]() |
送花文章: 0,
![]() |
向 伊Da 送花的會員:
|
![]() |
#2 (permalink) |
註冊會員
![]() |
![]() 我只會撥花生殼
![]() ![]() ![]() ![]() ![]() ![]() PEncrypt 3.1 Final -> junkcode 1http://av5.cn/viewthread.php?tid=48&extra=page%3D3 Morphine 1.2 - 1.3 -> rootkit 大家好... 又是我,三國無霜! 今天主要介紹怎樣分析網馬! 雖說有些網馬都是被加密過的不好分析 但是對於ani的圖片馬就難說了. 一個論壇,從編輯們一個一個的離去 論壇老人走了一批又一批.. 現在剩下的只有木馬 廣告和潛水者 以及如舊的悲傷.... 難道,所謂的管理員就是這樣來維護自己的論壇? 難道,一句有殺毒軟件就可以了! 就能把你的失職所一筆勾銷嗎? 我們要的是事情結果,並不是要你給我們"口頭"上的結果. 廢話可能太多了 還是繼續吧~ 用到的工具 WSockExpert 嗅探工具 PEID 查殼工具 殼是尤為重要的東西 一般的木馬都會加殼,可以起到保護作用! C32Asm 在我這裡 我拿來做16進制編輯 當然大家也可以用其他的工具.. 目標 http://www.digtlera.com/bbs/index.asp 我曾經也是這裡的一份子..但是"它"改變了很多 http://www.mhtenglong.com/sg/2007g.bmp ANI的網馬... 先看看首頁被掛了幾處馬! <iframe src=http://www.mhtenglong.com/mm.htm height=0 width=0></iframe> <iframe src=http://www.digtlera.com/bbs/Dv_ClsOther.asp width=0 height=0></iframe> 2處 第2個早就沒用了,所以我就介紹第一個吧! WSockExpert 嗅探工具 嗅探http://www.mhtenglong.com/mm.htm 看看還有沒有其他的木馬 有幾個是以前的馬..然後下載http://www.mhtenglong.com/sg/2007g.bmp 應該是戰狼3的ANI馬 然後下載http://www.yx456.com.cn/sg/1.exe 這個木馬 然後脫殼分析 PEID 查殼工具 先查殼 以便於脫殼!區段竟然是.三國1 擺明想陷害我!!BS他 沒有查到但不代表沒有殼 我在這介紹一種很簡單的方法來查殼! 看我操作 大家稍微等等! 脫殼以後就可以用C32Asm 來查看編輯了 我事先就脫掉殼了... Morphine 1.2 - 1.3 -> rootkit 應該是偽裝殼 先用C32Asm載入吧 分析結果等下在看 http://www.yx456.com.cn/xz/1.txt 所以說脫殼和沒脫殼差別是很大的!切記 心腸也購狠的 Trojan-PSW.Win32.OnLineGames.afb 分析結果也差不多了 看看吧 packers: NSPACK, MASKPE 這是 1.exe的 NSPACK的殼 MASKPE修改過... packers: MASKPE 用 MASKPE修改 接下來我就演示一下怎樣改區段 和偽裝殼 達到欺騙和嫁禍的目的!◎ 看操作即可 我不大字了 最後運行木馬 看看能否上線◎ ASProtect 2.1x SKE -> Alexey Solodovnikov 標 題: 學習ASProtect 2.1x SKE 脫殼(高手勿看) 發帖人:mirrormask 時 間: 2005-11-26 16:36 原文鏈接:http://bbs.pediy.com/showthread.php?threadid=18893 詳細信息: 【目 標】:Security Officer for Windows 6.7.1.1 【工 具】:flyodbg1.1、LORDPE、ImportREC,WinHex 【任 務】:脫殼、修復 【操作平台】:Windows XP sp2 【作 者】: mirrormask 【相關鏈接】: google 【簡要說明】:老婆經常偷玩遊戲,近日又迷上英雄無敵,荒廢學業。某天突發奇志,要金盆洗手,要我找一用戶控制軟件,功能要求是在她的用戶界面下,只能進入學習資料文件夾。於是找到一名為Security Officer for Windows的鼕鼕,方便之處不能細數。可是只有30天試用期。想我也在看雪受諸位高手熏陶多時,向老婆誇下海口,要在30天內解除軟件限制,使她的學習環境得到保證.找來高手文章,邊學邊練,12日後,神功初成,軟柿子涅扁。 【詳細過程】: peid:ASProtect 2.1x SKE -> Alexey Solodovnikov od,大概32次異常後下code段內存斷點,shift-f9,斷下 00529D3C 55 push ebp ;這裡 00529D3D 8BEC mov ebp,esp 00529D3F 83C4 F0 add esp,-10 00529D42 B8 4C975200 mov eax,wso.0052974C 00529D47 E8 88CFEDFF call wso.00406CD4 做了一個只有32 個esto 的odscript腳本(別的指令不會)。簡陋,但方便。 無stolen code,竊喜。 1、iat初步分析 粗跟一下,會看到call進入殼裡了。 00406C10 E8 EB93DA00 call 011B0000 ;可能是其他數值 搜索命令 call 011B0000,發現從 40123c開始,類似 /*40123C*/ jmp dword ptr ds:[530***] 形式的語句,他們本應整齊排列,530***就應是iat位置。但被call 011B0000這類指令打斷,api調用被加密。d 530000,發現從5301b4到5309a0處是iat表,但是iat表被加密,比如: 005301F0 *5C B4 FB 1B AD 9C 80 7C *C8 2D E7 47 11 03 81 7C \貸 瓬|?鏕 亅 *處就是加密後的iat 2、找到api解密代碼位置 通過學習loveboom的《ASPROTECT 2.x 脫殼系列》,知道api解密後call 011B0000會被修改,在 00406C10 E8 EB93DA00 call 011B0000 下內存寫入斷點 00FC5CEE 8902 mov dword ptr ds:[edx],eax ;斷在這裡 00FC5CF0 EB 01 jmp short 00FC5CF3 對00FC5CEE 以上幾個call分析(見loveboom文一) 00FC5C9E 8D4D E0 lea ecx,dword ptr ss:[ebp-20] 00FC5CA1 8B45 F4 mov eax,dword ptr ss:[ebp-C] 00FC5CA4 8B40 3C mov eax,dword ptr ds:[eax+3C] 00FC5CA7 8B55 FC mov edx,dword ptr ss:[ebp-4] ; 00FC5CAA E8 D1130000 call 00FC7080 ;edi中為api地址。 跟進 00FC7080 55 push ebp 00FC7081 8BEC mov ebp,esp 00FC7083 83C4 E4 add esp,-1C 00FC7086 53 push ebx 00FC7087 56 push esi 00FC7088 57 push edi 00FC7089 894D F4 mov dword ptr ss:[ebp-C],ecx 00FC708C 8955 F8 mov dword ptr ss:[ebp-8],edx 00FC708F 8945 FC mov dword ptr ss:[ebp-4],eax 00FC7092 33C0 xor eax,eax 00FC7094 8945 F0 mov dword ptr ss:[ebp-10],eax 00FC7097 B8 00070000 mov eax,700 00FC709C E8 A3B4FDFF call 00FA2544 跟進 00FA2544 85C0 test eax,eax 00FA2546 74 0A je short 00FA2552 00FA2548 FF15 1890FC00 call dword ptr ds:[FC9018] ;;edi中為api地址。 loveboom說,此處下斷點不會被檢測到,就拿此處開刀! 3、還原iat 重新加載wso.ese,到達oep後,把 00FA2548 FF15 1890FC00 call dword ptr ds:[FC9018] 改為 call 0e000033 先申請一塊內存(用od插件memory manage): 地址=0E000000 大小=00010000 (65536.) 寫下如下代碼: 0E000000 mov dword ptr ds:[E001000],532D40 ;532D40開始,原iat所在區塊是連續空白區,下一個區塊也是空白,作為預留空間,存放解密後api地址 0E00000A mov edx,401000 ;搜索「call 11b0000「的起始地質 0E00000F cmp byte ptr ds:[edx],0E8 ;是否為call指令? 0E000012 jnz short 0E000028 ;繼續搜索 0E000014 mov eax,dword ptr ds:[edx+1] ;計算調用地址 0E000017 add eax,edx 0E000019 add eax,5 0E00001E cmp eax,11B0000 ;調用地址=11b0000?(11b0000可變) 0E000023 jnz short 0E000028 ;繼續搜索 0E000025 pushad ;保存堆棧,觀察堆棧變化 0E000026 jmp edx ;執行call 11b0000,進入api解密.如0E000033處下代碼斷點 0E000028 inc edx 0E000029 cmp edx,52A000 ;代碼段結束? 0E00002F ^jb short 0E00000F ;繼續搜索 0E000031 -jmp short 0E000031 ;方便dump 0E000033 mov ecx,dword ptr ds:[E001000] ;中斷在此處,[E001000]中是為iat預留的地址 0E000039 nop ... ; 39~~~~6c之間為nop,, 0E00006c nop 0E00006D mov dword ptr ds:[ecx],edx ; edx中是api解密後地址,放入預留的iat中 0E00006F add dword ptr ds:[E001000],4 ;下一個iat地址 0E000076 mov dword ptr ds:[E002000],ecx ;保存ecx 0E00007C add esp,12C ;與0E000025處pushad對應的堆棧地址,12c可變 0E000082 popad 0E000083 mov ebx,dword ptr ds:[E002000] ;恢復ecx 0E000089 mov dword ptr ds:[edx+2],ebx ;修改api調用地址為解密後地址 0E00008C mov word ptr ds:[edx],25FF ;修改calll 011b0000為jmp ********形式 0E000091 mov ebx,dword ptr ds:[E001000] 0E000097 mov dword ptr ds:[ebx],0 ;iat保存後,下一dword填充00000000 0E00009D nop 0E00009E add dword ptr ds:[E001000],4 ;下一個iat預留地址 0E0000A5 ^jmp short 0E000028 二進制碼為: C7 05 00 10 00 0E 40 2D 53 00 BA 00 10 40 00 80 3A E8 75 14 8B 42 01 03 C2 05 05 00 00 00 3D 00 00 1B 01 75 03 60 FF E2 42 81 FA 00 A0 52 00 72 DE EB FE 8B 0D 00 10 00 0E 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 89 11 83 05 00 10 00 0E 04 89 0D 00 20 00 0E 81 C4 30 01 00 00 61 8B 1D 00 20 00 0E 89 5A 02 66 C7 02 FF 25 8B 1D 00 10 00 0E C7 03 00 00 00 00 90 83 05 00 10 00 0E 04 EB 81 代碼是參照syscom <ASProtect.SKE.2.11 高速脫殼+(圖示) >中示範代碼編寫的,由於iat加密,進行了調整,將解密後api直接放入為其預留的iat空間,同時 0E000091 mov ebx,dword ptr ds:[E001000] 0E000097 mov dword ptr ds:[ebx],0 ;解密api地址保存為之後面填充00000000 為了使imprec不出現誤報,每一api解密後iat填充00000000 代碼編寫完畢後,使eip=0e000000,f9,片刻,f12暫停。 dump wso.exe 。 imprec抓取iat,oep=00129D3C,rva=130000,size=4000,get,cut無效指針 fix it,不能正常運行,od載入繼續跟蹤發現: 004012F4 - FF25 0C025300 jmp dword ptr ds:[53020C] 004070F0 - FF25 F4035300 jmp dword ptr ds:[5303F4] 兩處均是GetProcAddress,imprec修正. 可以運行,但有點問題 4、暗樁修復 先來去掉日期提示nag: 0052947C . /7E 1E jle short wso.0052949C ;修改為jmp short wso.0052949C 0052947E . |A1 38CF5200 mov eax,dword ptr ds:[52CF38] 00529483 . |8B00 mov eax,dword ptr ds:[eax] 00529485 . |8B10 mov edx,dword ptr ds:[eax] 00529487 . |FF92 EC000000 call dword ptr ds:[edx+EC] ;nag窗口 0052948D . |83F8 02 cmp eax,2 ;按try,eax=1;按quit,eax=2 00529490 . |75 0A jnz short wso.0052949C 再來去掉about的異常 把00FA0000-00FD3000 區塊(位置可能會變化,od跟蹤確定) 用lordpe dump,裝配進修復好的wso.exe.rebuild pe.過程如下: 先打開lordpe,選wso.exe進程,點右鍵,區域脫殼,選00FA0000-00FD3000 區塊,保存00FA0000-00FD3000.dmp文件。 再用用lordpe的pe編輯器打開已修復的wso.exe,然後查看區段,在區段表最後一條點右鍵「從硬盤載入區段」,載入00FA0000-00FD3000.dmp文件。 在新增區段上點右鍵,「編輯區段頭」將虛擬地址改為ba0000 保存,rebuild pe,ok 在把about的unregistered改一下,和正式版一樣:)得到老婆誇獎,還將syscom,loveboom,fly等諸位大牛大大的敬仰了一把。:) 收功之後,英雄無敵目錄locked,設置password,以為老婆學業從此蒸蒸日上,與時俱進,再無30日之憂。誰知某日凌晨醒來,慘叫之聲不絕於耳,老婆的大天使正在斬妖除魔。不可能阿,我的防護天衣無縫,只有我才能進入遊戲目錄。老婆見我驚愕,羞澀的嫣然一笑,慚愧而又驕傲的告訴我「下次吧密碼設複雜點兒「。 兄弟們,牢記教訓阿。 |
![]() |
送花文章: 9114,
![]() |
向 莊孝偉 送花的會員:
|