의미없는 블로그
webhacking.kr (1, 2번) 본문
#1번 ----------------------------------------------------------------------------------------------------
index.phps 뭔가 들어가보고 싶게 생겼다
들어가면 코드나오는데
일단 쿠키의 user_lv 값이 5보다 크면 solve 된다고 써있네
근데 user_lv 값이 6보다 크면 1로 강제 세팅한다
위에 eregi 함수는 필터링 함수인데 eregi(필터링 문자열, 필터링 대상)
^ 는 [] 안에 쓰이면 not 의 의미래니깐 ^0-9 는 숫자가 아닌 다른걸 넣으면 user_lv 값을 1로 세팅하는 건가?
별로 안중요하고 무튼 5보다 크고 6보다 작은 값으로 세팅해야 문제 풀 수 있다
eregi 함수는 %00 만나면 더이상 필터링 안하는 취약점 있다고 함 나중에 써먹을일 있을듯
EditThisCookie 라고 Cooxie 같은건데 크롬 플러그인이다
user_lv 값을 5.5 로 해주고 새로고침하거나 페이지 뒤로가기 해서 다시 들어가보면 문제 풀림~
#2번 ----------------------------------------------------------------------------------------------------
어쩌라는 거냐...
그냥 습관적으로 버프 잡아본다
admin 이 보인다~
아래 시간이 표시되어 있는데 나중에 이게 쓰인다
admin 들어가보면 패스워드 입력해야 하는데
싱글쿼터(') 안먹혀서 인젝션 안되는 듯
CONTACT 페이지에 노출된 저런 ID 혹시나 해서 해봐도 당연히 안됨^^...
아까 응답값에 있던 시간 정보를 이용한 Cookie 인젝션 이라고 하는데
쿠키값에 쓸데없이 time 정보가 있다
참 값으로 만들면 시간 저렇게 바뀜 (09:00:01)
거짓으로 만들면 이렇게 됨 (09:00:00)
Blind SQL 인젝션 하면 되는데
컬럼(password), 테이블(admin) 은 다른데 보니깐 그냥 유추인 듯 하다
사실 이렇게 때려맞춰서 맞을일은 거의 없겠지...
무튼 admin 패스워드는 10자리이다
친절한 어떤분께서 짜주신 파이썬으로 돌려보면
admin 패스워드는 0nly_admin
관리자 페이지 로그인 해보면 끝난게 아니지~
메뉴얼 패스워드란게 있다
BOARD 게시판에 비밀글 하나 있는데
얘를 또 풀어야함
얘도 아까 Cookie 인젝션 이용해서 패스워드 찾을 수 있는데
select length(password) from FreeB0aRd 이 쿼리로 하면 되고
컬럼(password) 은 그냥 유추인듯 하고 테이블(FreeB0aRd) 은 게시판에 써 있는데 그거 보고 유추해야 한다고 한다...
이것도 친절한 어떤분이 짜주신 파이썬을 돌려본다
패스워드 입력하면 첨부파일 다운받을 수 있다
같은 패스워드로 압축풀면 Flag 값 나온다
Auth 에서 획득한 Flag 값 입력하면 Solve~
친절한 어떤분의 파이썬 ↓↓↓
'# 나 > pentest (WEB)' 카테고리의 다른 글
Lord of SQL Injection (1번) (0) | 2019.07.16 |
---|---|
webhacking.kr (3, 4, 5번) (0) | 2019.07.12 |
webhacking.kr (0) | 2019.07.09 |
Lord of SQL Injection (15, 16, 17, 18번) (0) | 2019.07.03 |
Lord of SQL Injection (3, 4, 7, 11, 12, 13번) (1) | 2019.07.02 |