web(98)
-
RPG1 풀이
이번 문제는 RPG Maker로 만들어졌나 보네요 게임 접속부터 해보겠습니다 캐릭터와 물길, 상자가 보입니다 딱 봐도 저 상자를 열어야 할 것처럼 생겼습니다 열어보려고 했는데 역시나 안되네요 그래서 JS를 변조해보려고 했는데, 코드가 너무 깁니다....ㅋㅋ 이걸 하나하나 다 분석하기엔 너무 힘들 것 같고, 다른 방법을 찾아야 할 듯합니다 개발자 도구에서 뒤적거리던 중, Network 탭에서 Map001.json을 발견했습니다 "현재 로딩되는 맵에 대한 정보를 저렇게 JSON으로 받아오는 게 아닐까?"라는 가설을 세운 상태로 열어봤습니다 맨 윗부분에 "autoplayBgm", "battleback1Name", "bgm" 등이 있는데, 아마 옵션의 상태인 것 같습니다 그리고 그 아래 data가 잔뜩 있는데,..
2024.03.18 -
old-09 풀이
1번 페이지와 2번 페이지를 눌렀을 때는 별다른 힌트가 나오지 않았는데, 3번 페이지에만 힌트가 나와있습니다 테이블의 컬럼명이 id와 no이고, 3번의 id는 "password"라고 합니다 아마 Blind SQL Injection 문제인 것 같습니다 문제에서 컬럼의 구성을 알려주었으니, 필터링되는 문자와 참/거짓의 출력이 어떻게 나오는지 등을 파악해 주면 됩니다 no에 여러가지 값을 넣어봤습니다 1~3을 제외한 숫자 : 별다른 문자열이 적혀있지 않은 페이지 특수문자 : Access Denied이 적힌 페이지 1 : Apple이 적혀있는 페이지 2 : Banana가 적혀있는 페이지 3 : Secret 페이지 그래도 괄호랑 substr, like는 필터링되지 않으니, 이걸로 파이썬 코드를 짜서 돌려주겠습니다..
2024.03.16 -
old-28 풀이
파일을 업로드할 수 있도록 되어있습니다 테스트~~~~라고 적힌 test1.txt를 업로드해보겠습니다 한글은 깨지나 보네요 뒤에 물결표 4개가 보이는 걸 보니, 파일에 적은 내용이 그대로 출력되는 듯합니다 php로 기본 웹쉘 파일을 하나 만들어서 업로드해주겠습니다 처음 시작할 때, 꺽쇠가 필터링되는 걸 확인할 수 있습니다 이렇게 되면 확장자 우회를 해봤자, 나중에 필터링이 될 테니... 평범한 방법으로는 풀 수 없는 문제인 것 같네요 처음에 준 미션이 ./upload/EWUmY0wLfsn8/flag.php에 있는 파일을 읽어오는 것이었는데... 아이디어가 떠오르지 않아서 구글링을 해봤습니다 https://h232ch.tistory.com/37 8. 업로드 공격 우회 1. .htaccess 파일 업로드 (아..
2024.03.15 -
old-50 풀이
대놓고 SQL INJECTION이라고 쓰여있길래 바로 코드부터 가져왔습니다 문제가 풀리는 조건은 lv가 3이 되었을 때라고 합니다 select lv from chall50 where id='{$_GET['id']}' and pw=md5('{$_GET['pw']}') 쿼리를 보면 pw가 md5로 들어갑니다 이 부분을 주석처리 해주고, union select 3을 해주면 될 것 같습니다 https://securitynote.tistory.com/3 [SQLi] magic_quotes_gpc, mysql_real_escape_string() 우회 참고 URL http://www.securiteam.com/unixfocus/6X00P0ANFM.htmlhttp://pjongy.tistory.com/131http:..
2024.03.14 -
old-53 풀이
메인 페이지에 아무것도 없길래 바로 코드부터 가져왔습니다 answer에 들어가는 값이 $hidden_table과 같으면 문제가 풀린다고 합니다 그런데 테이블 조회를 해야 풀리는 문제에서 select가 필터링된 게 꽤나 난감하네요 해결 방안을 찾기 위해 구글링을 해봤습니다 https://blog.naver.com/withrubiya/70170942917 sql인젝션 필터우회의 모든것(펌) 아 솔직히 블로그 관리하는거 진짜 귀찮은것같아요 이걸 어떻게 꾸준히하지 그냥 그렇다고요... blog.naver.com 다양한 필터링 우회 방법이 나와있는 블로그를 찾았습니다! 저는 컬럼명을 모르니 procedure을 사용해 보겠습니다 이제 나온 테이블 명을 answer에 넣어서 보내주겠습니다
2024.03.04 -
old-08 풀이
SQL Injection 문제입니다 쿼리의 결과가 "admin"이어야 문제가 해결됩니다 만약 ck에 값이 들어있지 않다면, agent와 ip, id를 새로 삽입해 줍니다 (id는 guest로 고정 삽입이네요) id보다는 agent를 건드려주면서 뒤쪽 부분은 주석처리 해주는 게 관건인 것 같으니, BurpSuite로 이 부분을 만져주겠습니다
2024.03.04