Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- webhacking
- 쿠키는 맛있음
- webhacking.kr 14
- php code 해석
- webhacking.kr
- hacking
- Web
- js code 해석
- HTML
- php 해석
- js 문제
- web cookie
- js 해석
- repl.lt
- httplib2
- js 코드
- php
- Visual sutdio
- webhacking 6
- webhacking 14
- php code
- aiohttp
- php base64 encode
- 쿠키 사용법
- 비주스
- hidde flag
- urllib.request
- robot image
- faster_than_requests
- http.client
Archives
- Today
- Total
it 공부 일기 - 워게임 ctf 풀이 및 언어 강좌모음
hackctf Login 문제 풀이 본문
Login 문제를 살펴보면 Login 버튼과 View Source 버튼이 있는데
View Source 를 눌러보면
이런식으로 PHP 소스코드가 나오는것을 볼 수 있는데
MYSQL 를 사용하고 Login 창이 있는것을 보아하니 sql injection 분제라고 예측이 된다.
해당 문제는 단순하게 mysql 결과만 나오게 하면은 된다
id = '' and pw = '' 이런식으로 아이디 패스워드를 받는데
sql injection 성공하기 위해서는
' or 1=1 #'이런식으로 id 에 넣어주면
플래그가 나오게 된다.
해당 문제는 간단하고 심플한 sql injection이고
select * from jhyeonuser where binary id='$id' and pw='$pw'
해당 sql 쿼리에서 sql injection를 시도하면
mysql 에
select * from jhyeonuser where binary id='' or 1=1 #'' and pw=''
이런식으로 '' or(또는) 1=1(참) 이다 그리고 #(주석) 으로 pw 부분을 주석 처리하여 무시해버리는것이다.
mysql 에서 where 앞에 있는 조건이 참이 되면 반환되는데
1=1 같은 참을 쿼리로 넣어주면 sql injection이 성공하게 된다.
해당 문제는 php 조금 Mysql 을 알고있으면 간단하게 풀수있었다. - =͟͞͞ ( ꒪౪꒪)ฅ✧
FLAG is HackCTF{s1mple_sq1_1njecti0n_web_hack!!}
'ctf.j0n9hyun.xyz' 카테고리의 다른 글
hackctf 마법봉 문제 풀이 (0) | 2021.01.13 |
---|---|
hackctf Guess me 문제 풀이 (0) | 2021.01.11 |
hackctf web / 문제 풀이 (0) | 2020.12.12 |
hackctf Button 문제 풀이 (0) | 2020.12.12 |
hackctf 보물 문제 풀이 (0) | 2020.12.12 |