simple_sqli 문제

일단 기본 메인 화면이다
코드를 확인해보겠다.

들어오자마자 db가 환영을 해준다.
일단 계정이 보인다
guest 계정과 admin 계정인데 일단 알겠다

로그인 페이지 이다
userid를 입력 받고 userpassword를 입력 받고 admin이면 flag를 주는것 같다
password를 알 수 없는 상황에서 어떻게 로그인 할 수 있을까..?
풀이
일단 sqli가 통할것같다
일단 확인을 위해 아이디에 "만 입력을 해보았다
만약 뭐 막아둔게 없으면 "가 3개가 생기게되어 500에러가 뜰것이다

역시 통한다
500에러가 뜨며 비정상적인 상태를 보인다
그래서 바로 admin" -- 1 를 아이디에 입력을 하였다
간단히 해석을 하면
admin으로 id를 입력하고, "를 사용하여 입력을 끝내 주었고, -- 즉 주석을 이용하여 password는 건너 뛰어줬다

이렇게 flg가 잘 나오는것을 볼 수가 있다
하지만 그러면 이때 "가 총 3개가 생기게된다(500에러) 왜 flag가 나올까?????
-> 전혀 걱정 할게 없는게 위에서 --로 주석처리를 해줄때 에러문제는 같이 사라지게 된다.
command-injection 문제

일단은 메인 화면이다
코드를 한번 보겠다

host를 입력받아서 " "를 통해 문자열로 만들어서 핑을 보낼 수 있는 사이트로 보인다
그리고 에러가 나면 에러 페이지가 나오는것 같다
또한 리눅스를 사용하는것으로 보인다
맞다

문제 설명이다.
그러면 당연히 command injection으로 flag.py를 찾아서 간단히 풀면 될것같다
풀이
일단 바로 생각나는것은 8.8.8.8; cat flag.py이다
하지만 host를 입력받을때 " "를 통해 문자열로 만들기 때문에 우회 해주어야 한다
즉 8.8.8.8"; cat flag.py #으로 풀면 될것 같다
해보면 안된다.
요청한 형식으로 입력하라고 나온다......
분명 백엔드 코드에는 그런 조건 같은것은 없었다.
그래서 HTML코드를 봐보도록 하겠다

보니까 아무 깜찍한 pattern 조건이 숨어있었다.
지워주겠다.

지워 주었고
다시 하면 풀어보면

성공했다!!
command-injection-chatgpt 문제

일단 나는 gpt를 사용하지 않고 풀도록 하겠다.
놀랍게도 방금전 문제와 메인 화면이 똑같다
코드도 보겠다

코드도 매우매우매우매우매우 유사하다
단, host를 입력받을때 " "를 통해 문자열로 만들어서 핑을 보냈던 방금전 문제와는 달리 그냥 핑을 보낸다
풀이
오

얘는 입력 조건이 없다
그러면 바로 8.8.8.8; cat flag.py를 입력해 주었다

풀었다!
'web > 웹 해킹' 카테고리의 다른 글
| baby-union 문제 풀이 + 여러 sql injection 방식 (0) | 2025.11.08 |
|---|---|
| simple_sqli_chatgpt 문제 풀이 (0) | 2025.11.06 |
| BypassIF 문제 풀이 (0) | 2025.11.06 |
| XSS , CSRF 문제 풀이 (0) | 2025.11.04 |
| Cookie, session 문제 풀이 (0) | 2025.11.01 |