분류 전체보기(324)
-
old-07 풀이
go라는 변수에 val의 값을 GET 형태로 가져옵니다 그리고 go에 2, -, +, from, _, =, \s, *, \가 있는 경우, "Access Denied!"를 출력하면서 필터링을 해줍니다 그리고 rand 변수에 랜덤 값을 하나 뽑아서 넣어주고, rand의 값에 따라 조건문을 다르게 실행합니다 쿼리의 결과가 2인 경우에만 문제가 해결됩니다 SQL Injection 문제인 것으로 보입니다 쿼리의 결과를 2로 조작해야 하는데, 필터링 목록에 2가 있네요... 이걸 어떻게 우회하는지가 관건인 것 같습니다 if(preg_match("/2|-|\+|from|_|=|\\s|\*|\//i",$go)) exit("Access Denied!"); 좀 더 보기 편하도록, 필터링 부분만 다시 가져와봤습니다 숫자 2..
2024.02.26 -
g00gle1 풀이
문제를 열어보니 구글폼 하나가 보입니다 선택지가 두 개 있는데, 둘 다 긍정이라 그냥 아무거나 눌러서 제출하려 했습니다 그러나 경고 표시로 "정확히 0개의 옵션을 선택해야 합니다"라고 뜨네요 개발자 도구에 들어가서 코드를 살펴보겠습니다 코드 전체를 보기에는 양이 좀 많으므로, 우선 script 부분만 쭉 살펴보겠습니다 FB_PUBLIC_LOAD_DATA 안에 "Do you want flag?", "yes", "sure" 등 설문지에서 봤던 문자열이 등장합니다 어떤 값들이 있을까 쭉 살펴보고 있는데..... FLAG가 보입니다..? 우선 제출부터 바로 해줬습니다 아마 JS 조작으로 숨겨진 답을 만들어 놓으신 것 같은데... 문제 점수가 50점인걸 보면 다른 풀이 방법이 있기라도 한건지...?? 잘 모르겠습..
2024.02.26 -
old-35 풀이
폰 번호를 입력하는 폼이 하나 있습니다 코드부터 확인해 보겠습니다 SQL Injection 문제인 것 같네요 preg_match()로 *, /, =, select, -, #, ;, admin을 필터링하고 있습니다 그리고 id의 길이가 5 이상이면 안된다고 되어있네요 문제 해결 조건은 isAdmin의 ip와 제 PC의 IP가 동일해야 한다고 되어있습니다 "insert into chall35(id,ip,phone) values('{$_GET['id']}','{$_SERVER['REMOTE_ADDR']}',{$_GET['phone']})" 위 쿼리에서 id에는 길이 제한이 있으므로 phone에 값을 넣는 것이 좋아 보입니다 (메인 페이지에 있는 입력란이 phone이기도 하고요) 문제를 풀기 위해 필요한 데이터..
2024.02.19 -
old-41 풀이
파일 업로드 폼이 만들어져 있습니다 https://www.php.net/manual/en/function.error-reporting.php PHP: error_reporting - Manual I always code with E_ALL set.After a couple of pages of I made this function to make things a little bit quicker. Unset values passed by reference won't trigger a notice. www.php.net 코드 상단 부분에 error_reporting()이라는 함수가 있어서 구글링을 해봤습니다 ini_set()과 함께 쓰이며, 에러 처리를 할 때 에러 문구와 파일 경로를 출력해 주는 역할을 한..
2024.02.17 -
old-44 풀이
노란색으로 적힌 주석을 보면 ls 명령어를 실행하라고 되어있습니다 문제 코드를 보면 id를 POST로 받아오고, 5글자까지만 사용한다고 합니다 system() 함수 안에 들어있는 "echo 'hello! " 문자열을 출력하고, 그 뒤에 '|'ls를 추가해서 명령어가 실행되도록 해줬습니다 (이렇게 하면 글자 수도 딱 5글자) 나온 경로로 이동해 보겠습니다
2024.02.15 -
old-34 풀이
검은 메인 화면에 debug me라는 알림 창이 떴습니다 소스를 확인해봐야겠습니다 javascript 코드가 있습니다 저 상태로는 디버깅하기 힘들 테니, Online JavaScript Beautiful로 코드를 보기 편하게 만들어주겠습니다 var a = ['RcOhTDV1Ew==', 'McOVwqpRBg==', 'c8K/w43DvcK8', 'SsOrTCF1CVDCgcKLEsKc', 'NsK/w4Bc', 'G1TDpwk=', 'AcKtwqfDlW7Dsw==', 'e3kkcQJfwoNFDEU9', 'QMOXDBo=', 'w5bCsWlh', 'eWY6bg8=', 'FnbDoEvDtl1LUkB7w4Q=', 'esOZTiPDsg==', 'bzfCkFfCtA==', 'ZmzDjHcn', 'PxLCm3LDvA=='..
2024.02.15