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
- Python requests 설치
- Lord of SQL Injection
- ubuntu
- utmp
- btmp
- No module named ‘requests’
- los.rubiya.kr
- 1819 (HY000):
- 우분투
- Union SQL Injection
- Error Based SQL Injection
- SQL i
- blind SQLi
- XAVIS
- MySQL
- str_replace함수
- Kail Linux
- goblin 3번
- sqli
- 가상머신 os
- mocOS
- 2002(HY000)
- UTM
- ModuleNotFoundError: No module named ‘requests’
- sql injection
- SQLi wargame
- Lord of SQLinjection
- docker compose
- LOS 5번
- M2
Archives
- Today
- Total
klaus
[Lord of SQL Injection] giant 14번 (feat. 공백 우회) 본문
0.자이언트
1. 전체 코드
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(strlen($_GET[shit])>1) exit("No Hack ~_~");
if(preg_match('/ |\n|\r|\t/i', $_GET[shit])) exit("HeHe");
$query = "select 1234 from{$_GET[shit]}prob_giant where 1";
echo "<hr>query : <strong>{$query}</strong><hr><br>";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result[1234]) solve("giant");
highlight_file(__FILE__);
?>
2. 중요코드 분석
if(strlen($_GET[shit])>1) exit("No Hack ~_~");
if(preg_match('/ |\n|\r|\t/i', $_GET[shit])) exit("HeHe");
$query = "select 1234 from{$_GET[shit]}prob_giant where 1";
if($result[1234]) solve("giant");
1) strlen함수를 보면 shit의 입력값의 길이는 1보다 작아야 합니다.
2) Preg_match함수를 보면
- (공백)
- \n
- \r
- \t 을 필터링합니다.
3) query를 보면 from와 prob_giant사이에 GET [shit] 입력해주면 solve 됩니다.
3. solve
먼저, 공백 값을 입력하기 위한 문제 및 hex는 아래와 같습니다.
[공백 우회]
문자 | 16진수(Hex) | 설명 |
tab | %09 | \t 필터링되어 불가능 |
line feed | %0a | \n 필터링되어 불가능 |
vertical tab | %0b | |
form feed | %0c | |
carriage return | %0d | \r 필터링되어 불가능 |
/**/ | shit의 길이는 1보다 작아야하기 때문에 불가능 |
new line : '\n', 0x0a, 화면에 출력 시 다음 행으로 줄을 바꿉니다.
carriage return : '\r', 0x0d, 행의 처음으로 커서를 이동합니다.
form feed : '\f', 0x0c, 프린트 출력 시 현재 페이지를 마칩니다.
필터링되는 것을 제외하고는 vertical tab와 form feed 사용하여 문제를 풀어보도록 하겠습니다.
스포주의!
더보기
?shit=%0b
?shit=%0c
참고 :
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=mtjeaids&logNo=70053523593
'모의해킹 > Wargame' 카테고리의 다른 글
[Lord of SQL Injection] succubus 16번(feat. 싱글쿼터 우회) (0) | 2022.12.23 |
---|---|
[Lord of SQL Injection] assassin 15번 (0) | 2022.12.22 |
[Lord of SQL Injection] bugbear 13번 (0) | 2022.12.21 |
[Lord of SQL Injection] darkknight 12번 (0) | 2022.12.16 |
[Lord of SQL Injection] golem 11번 (0) | 2022.12.09 |
Comments