Article View: ee.prog
Article #19veider PE-EXE
From: Andres Soolo
Date: Fri, 22 Aug 2003 02:26
Date: Fri, 22 Aug 2003 02:26
123 lines
6648 bytes
6648 bytes
Followup-to: ee.prog
Tere,
sain minagi hiljutises viirusevaimustuses hulgaliselt usse ja viirusi.
Ăhele neist (vt. <http://www.hot.ee/veideruss/document_9446.pif>)
kÔhtu vaadates avastasin niisuguse huvitava sektsioonitabeli:
name memsz RVA filesz offset !rel !ln #rel #ln flags
======== ====== ====== ====== ====== ==== ==== ==== ==== ========
.shrink 15000 1000 c400 1000 0 0 0 0 c0000040
.shrink 3000 16000 1200 d400 0 0 0 0 c0000040
.shrink 4000 19000 1200 e600 0 0 0 0 c0000040
.shrink 3000 1d000 2200 f800 0 0 0 0 c0000040
Huvitav ei ole mitte see, et sektsiooninimed korduvad, vaid see, et fail
ise on ainult 47196 = 0xB85C baiti pikk. Nagu nÀha, jookseb esimene
sektsioon seega faili lĂ”pust julmalt ĂŒle ja jĂ€rgmised kolm paiknevad
failist tÀielikult vÀljaspool. Sarnane on lugu ka imporditabeliga,
mis peaks okupeerima 0x9C baiti alates RVA'st 0x1EBE2, mis jÀÀb, nagu
ĂŒlevalt nĂ€ha, neljandasse .shrink'i -- mis omakorda tĂ€ielikult failist
vÀlja jÀÀb.
Kuidas see uss niimoodi töötada saab?
Niisugune sektsioonitabel jÀtab mulle mulje, nagu suudaks see uss end
lahti pakkida enne, kui opsĂŒsteem teda ĂŒldse mĂ€llu map'ima hakkabki.
Kuidasmoodi?
VĂ”i sattus mulle vigane uss, mis tuleks garantiikorras ĂŒmber vahetada?
Rohkem dumpi jÀrgneb:
=== MZ header ===
MZ magic: 'MZ'
0x0003 blocks in file, last has 0x0090 bytes
Header size: 0x0004 paragraphs
Extra paragraphs needed: min 0x0000, max 0xffff
Initial SS:SP = 0000:00b8
Checksum: 0x0000
Initial CS:IP = 0000:0000
Relocation table: 0 entries at [0040]
New EXE header at [000000e0]
=== PE header ===
PE magic: 'PE\x00\x00'
Target machine/a.out magic: 332 (i80386)
Section count: 4
Timestamp: 1061139293 (2003-08-17 16:54:53 GMT)
Symbol table: 0 entries at [00000000]
Optional header size: 0x00e0 bytes
Characteristics: -------3----SLxR
=== Optional (a.out) header ===
Optional header magic: 267 (PE32)
Linker version: 6.0
Text size: 0x00000000 Data size: 0x00007000 BSS size: 0x00000000
Entry point (RVA): [0001ebd6]
Base of text segment: [00001000]
Base of data segment: [00016000]
Preferred image base address: [00400000]
Alignment: memory 0x00001000 file 0x00000200
OS version: 4.0
Image version: 0.0
Subsystem version: 4.0
Size of image: 0x00020000 headers: 0x00001000
Checksum: 0x0001f117
Subsystem: 2 (Windows GUI)
DLL characteristics: 0x0000
Stack size: reserve 0x00100000 commit 0x00001000
Heap size: reserve 0x00100000 commit 0x00001000
Loader flags (obsolete?) 0x00000000
Dictionary entry count: 16
======== ========
00. Export table: 00000000 00000000
01. Import table: 0001ebe2 0000009c
02. Resource table: 00000000 00000000
03. Exception table: 00000000 00000000
04. Certificate table: 00000000 00000000
05. Base relocation table: 0001ec7e 00000008
06. Debug: 00000000 00000000
07. Architecture specific: 00000000 00000000
08. Global pointer: 00000000 00000000
09. TLS table: 00000000 00000000
10. Load config table: 00000000 00000000
11. Bound import table: 00000000 00000000
12. Import address table: 00000000 00000000
13. Delay import descriptor: 00000000 00000000
14. COM+ runtime header: 00000000 00000000
15. (reserved) 00000000 00200000
Section table
name memsz RVA filesz offset !rel !ln #rel #ln flags
======== ====== ====== ====== ====== ==== ==== ==== ==== ========
.shrink 15000 1000 c400 1000 0 0 0 0 c0000040
.shrink 3000 16000 1200 d400 0 0 0 0 c0000040
.shrink 4000 19000 1200 e600 0 0 0 0 c0000040
.shrink 3000 1d000 2200 f800 0 0 0 0 c0000040
Faili esimene ots nÀeb vÀlja niisugune:
00000000 : 4D 5A 90 00 03 00 00 00-04 00 00 00 FF FF 00 00 : MZ..............
00000001 : B8 00 00 00 00 00 00 00-40 00 00 00 00 00 00 00 : ........@.......
00000002 : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 : ................
00000003 : 00 00 00 00 00 00 00 00-00 00 00 00 E0 00 00 00 : ................
00000004 : 0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68 : ........!..L.!Th
00000005 : 69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F : is program canno
00000006 : 74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20 : t be run in DOS
00000007 : 6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00 : mode....$.......
00000008 : D3 A0 48 CF 97 C1 26 9C-97 C1 26 9C 97 C1 26 9C : ..H...&...&...&.
00000009 : 14 DD 28 9C 8D C1 26 9C-7F DE 2C 9C ED C1 26 9C : ..(...&...,...&.
0000000A : C1 DE 35 9C 9A C1 26 9C-97 C1 26 9C 94 C1 26 9C : ..5...&...&...&.
0000000B : 97 C1 27 9C 06 C1 26 9C-F5 DE 35 9C 9A C1 26 9C : ..'...&...5...&.
0000000C : 7F DE 2D 9C 8D C1 26 9C-52 69 63 68 97 C1 26 9C : ..-...&.Rich..&.
0000000D : 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 : ................
0000000E : 50 45 00 00 4C 01 04 00-5D B3 3F 3F 00 00 00 00 : PE..L...].??....
Aadressidel 80-DF asuv on PE-EXE jaoks kaunis ebatavaline ja meenutab,
kui ma ei eksi, ikooni. Ma oletan, et see on vajalik sellepÀrast, et
shell ikooni nÀitamise tarvis seda faili lahti pakkida ei oska.
--
Andres Soolo <soolo@math.ut.ee>
I've got a very bad feeling about this.
-- Han Solo
Technical Details
Message-ID:
<vibg11-ju5.ln1@news.mirky.net>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news-out.visi.com!petbe.visi.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed1.e.nsc.no!nsc.no!nextra.com!uio.no!newsfeed.kolumbus.fi!newsfeed2.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!news.ut.ee!news.estpak.ee!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ESTONIAN,UTF8
X-Google-Thread: f8b3f,9cef1d47eae80f89,start
X-Google-Attributes: gidf8b3f,public
X-Google-Thread: 101f2d,9cef1d47eae80f89,start
X-Google-Attributes: gid101f2d,public
X-Google-ArrivalTime: 2003-08-21 19:47:39 PST
Message-ID: <vibg11-ju5.ln1@news.mirky.net>
From: soolo@math.ut.ee (Andres Soolo)
Subject: veider PE-EXE
Newsgroups: ee.prog,ee.arvutid.microsoft
Followup-To: ee.prog
Organization: I'd tell you but then I'd have to organize you
User-Agent: tin/1.6.1-20030728 ("Vatersay") (UNIX) (Linux/2.4.20-k7 (i686))
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Date: Fri, 22 Aug 2003 05:26:09 +0300
NNTP-Posting-Host: 62.65.237.137
X-Trace: news.estpak.ee 1061520423 62.65.237.137 (22 Aug 2003 05:47:03 +0300)
Distribution: Estonia
Lines: 123
X-Complaints-To: usenet@estpak.ee
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-08!supernews.com!news-out.visi.com!petbe.visi.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed1.e.nsc.no!nsc.no!nextra.com!uio.no!newsfeed.kolumbus.fi!newsfeed2.funet.fi!newsfeeds.funet.fi!newsfeed.uninet.ee!news.ut.ee!news.estpak.ee!not-for-mail