WEBHACKINGKR-old06

Kim Myeong Hyun·2024년 8월 10일

webhacking

목록 보기
11/14

old-06

id랑 비밀번호 입력하는 것 같은데, 딱히 코드에 정보가 없으니 코드를 보자.

decode_id 에서 replace가 있고, base64로 디코드를 20번 한다. 디코드가 다 끝났을 때 id가 admin, pw가 nimda면 이지하게 풀 수 있는 문제다.

시나리오가 나왔으니 한 번 풀어보자.

  1. admin, nimda 문자열 base64 encode 20번
  2. cookie로 user와 passwd를 받아오니 editthiscookie로 바꿔서 입력 해주고 새로고침
import base64

decode_id = "admin"
decode_pw = "nimda"

bytes_id = decode_id.encode('utf-8')
bytes_pw = decode_pw.encode('utf-8')

for i in range(0,20):
    bytes_id = base64.b64encode(bytes_id)
    bytes_pw = base64.b64encode(bytes_pw)
    

print(bytes_id) #user
print(bytes_pw) #password

for i in range(0,20):
    bytes_id = base64.b64decode(bytes_id)
    bytes_pw = base64.b64decode(bytes_pw)
    
print(bytes_id) #admin인지 체크
print(bytes_pw) #nimda인지 체크

user랑 password 쿠키 변조해주고 새로고침하면 solve 된다.

profile
Hi, I'm KiMH

0개의 댓글