분류 전체보기
-
공격 백터 : id, pw 입력 값에 대한 검증 id : prob, _, . 필터링, ', \ 필터링 if(preg_match('/prob|_|\./i', $_GET[id])) exit("No Hack ~_~"); if(preg_match('/\'|\\\/i', $_GET[id])) exit("No Hack ~_~"); pw : prob, _, . 필터링, ', \ 필터링, addslashes() if(preg_match('/prob|_|\./i', $_GET[pw])) exit("No Hack ~_~"); if(preg_match('/\'|\\\/i', $_GET[pw])) exit("No Hack ~_~"); $_GET[pw] = addslashes($_GET[pw]); $_GET[pw] = adds..
[Lord of SQLInjection] Blue Dragon Write UP공격 백터 : id, pw 입력 값에 대한 검증 id : prob, _, . 필터링, ', \ 필터링 if(preg_match('/prob|_|\./i', $_GET[id])) exit("No Hack ~_~"); if(preg_match('/\'|\\\/i', $_GET[id])) exit("No Hack ~_~"); pw : prob, _, . 필터링, ', \ 필터링, addslashes() if(preg_match('/prob|_|\./i', $_GET[pw])) exit("No Hack ~_~"); if(preg_match('/\'|\\\/i', $_GET[pw])) exit("No Hack ~_~"); $_GET[pw] = addslashes($_GET[pw]); $_GET[pw] = adds..
2021.08.19 -
보호되어 있는 글입니다.
CVE-2021-26855 : Exchange Server SSRF Vulnerability보호되어 있는 글입니다.
2021.08.19 -
공격 백터 : id, no 입력 값에 대한 검증 id : prob, _, . 필터링, 7 이하 길이 제한 if(preg_match('/prob|_|\./i', $_GET['id'])) exit("No Hack ~_~"); if(strlen($_GET['id']) > 7) exit("too long string"); no : 숫자가 아닌 경우 1로 설정 $no = is_numeric($_GET['no']) ? $_GET['no'] : 1; $query = "select no from prob_red_dragon where id='admin'"; // if you think challenge got wrong, look column name again. $result = @mysqli_fetch_array(..
[Lord of SQLInjection] Red Dragon Write UP공격 백터 : id, no 입력 값에 대한 검증 id : prob, _, . 필터링, 7 이하 길이 제한 if(preg_match('/prob|_|\./i', $_GET['id'])) exit("No Hack ~_~"); if(strlen($_GET['id']) > 7) exit("too long string"); no : 숫자가 아닌 경우 1로 설정 $no = is_numeric($_GET['no']) ? $_GET['no'] : 1; $query = "select no from prob_red_dragon where id='admin'"; // if you think challenge got wrong, look column name again. $result = @mysqli_fetch_array(..
2021.08.18 -
you are not local이라고 메시지가 나오는 것을 보아하니 local로 접속하는 방법을 찾아봐야 할듯싶다. 일단 하이퍼링크에 들어가보자. 들어가보니 사용자에 대해 검색을 할 수 있는 것 같다. 검색시도를 해봅시다! 소스코드를 보니 userName을 입력하여 입력 값이 op.gg 페이지와 연결되나 보다. 여기서 이용해야할 취약점은 SSRF(Server Side Request Forgery)이다. SSRF는 Server Side Request Forgery의 약자로 유사한 이름을 가진 CSRF(Cross Site Request Forgery) 와는 다르게 클라이언트 측의 요청을 변조시키는 것이 아닌 서버 측 자체의 요청을 변조하여 공격자가 원하는 형태의 악성 행위를 서버에 던져주면 서버가 검증 없이..
[HackCTF] Web - LOL 풀이you are not local이라고 메시지가 나오는 것을 보아하니 local로 접속하는 방법을 찾아봐야 할듯싶다. 일단 하이퍼링크에 들어가보자. 들어가보니 사용자에 대해 검색을 할 수 있는 것 같다. 검색시도를 해봅시다! 소스코드를 보니 userName을 입력하여 입력 값이 op.gg 페이지와 연결되나 보다. 여기서 이용해야할 취약점은 SSRF(Server Side Request Forgery)이다. SSRF는 Server Side Request Forgery의 약자로 유사한 이름을 가진 CSRF(Cross Site Request Forgery) 와는 다르게 클라이언트 측의 요청을 변조시키는 것이 아닌 서버 측 자체의 요청을 변조하여 공격자가 원하는 형태의 악성 행위를 서버에 던져주면 서버가 검증 없이..
2021.08.15 -
공격 백터는 id와 pw가 있으며, select id,pw from prob_green_dragon where id='{$_GET[id]}' and pw='{$_GET[pw]}'에 사용이 된다. 똑같은 쿼리문이 2개가 작동하는데 첫번째 쿼리문의 id 결과 값이 있어야만 두번째 쿼리문이 작동되는 시스템이다. id와 pw에 대한 검증은 prob, _, ., ', "이 필터링 되는 거 빼곤 없다. 그래서 일단 문자형 데이터를 삽입할 땐 hex값으로 넣어야 할 것으로 판단된다. 나는 id를 admin으로 만들어주기 위해 /**/를 사용하여 id=‘/*’ and pw=‘*/admin’이라는 쿼리문을 생각했지만, /**/은 ’, “ 안에서 사용 시 문자열로 인식되어 주석처리가 되지 않는다. 다른 방법으로 \를 사용..
[Lord of SQLInjection] Green Dragon Write UP공격 백터는 id와 pw가 있으며, select id,pw from prob_green_dragon where id='{$_GET[id]}' and pw='{$_GET[pw]}'에 사용이 된다. 똑같은 쿼리문이 2개가 작동하는데 첫번째 쿼리문의 id 결과 값이 있어야만 두번째 쿼리문이 작동되는 시스템이다. id와 pw에 대한 검증은 prob, _, ., ', "이 필터링 되는 거 빼곤 없다. 그래서 일단 문자형 데이터를 삽입할 땐 hex값으로 넣어야 할 것으로 판단된다. 나는 id를 admin으로 만들어주기 위해 /**/를 사용하여 id=‘/*’ and pw=‘*/admin’이라는 쿼리문을 생각했지만, /**/은 ’, “ 안에서 사용 시 문자열로 인식되어 주석처리가 되지 않는다. 다른 방법으로 \를 사용..
2021.08.14 -
들어가자마자 쿠키가 반겨준다.. 쿠키와 관련이 있는 문제 같으니 바로 확인해보자. 쿠키 값으로 'WlhsS2NGcERTVFpKYWtscFRFTktNR1ZZUW14SmFtOXBXak5XYkdNelVXbG1VVDA5' 확인 하였고 쿠키 값에 정보가 들어가 있을 수 있으니 디코딩을 시도. 3회 base64로 디코딩 해보니 id=2, guest라는 값이 들어가 있는 것을 확인할 수 있었다. 그럼 id=1, admin으로 해서 쿠키 값을 전송해 보면 flag 값을 얻을 수 있을거 같다. 변조 후 전송해보았지만 깨꿀맛 쿠키가 패스워드 틀림과 함께 나를 반겨준다... 찾아보니 이문제는 strcmp 취약점을 이용해서 푸는 문제이다. strcmp에서 어떤 문자열을 비교할때 배열을 넣게 되면 우회가 가능하다.(php 버전..
[HackCTF] Web - Cookie 풀이들어가자마자 쿠키가 반겨준다.. 쿠키와 관련이 있는 문제 같으니 바로 확인해보자. 쿠키 값으로 'WlhsS2NGcERTVFpKYWtscFRFTktNR1ZZUW14SmFtOXBXak5XYkdNelVXbG1VVDA5' 확인 하였고 쿠키 값에 정보가 들어가 있을 수 있으니 디코딩을 시도. 3회 base64로 디코딩 해보니 id=2, guest라는 값이 들어가 있는 것을 확인할 수 있었다. 그럼 id=1, admin으로 해서 쿠키 값을 전송해 보면 flag 값을 얻을 수 있을거 같다. 변조 후 전송해보았지만 깨꿀맛 쿠키가 패스워드 틀림과 함께 나를 반겨준다... 찾아보니 이문제는 strcmp 취약점을 이용해서 푸는 문제이다. strcmp에서 어떤 문자열을 비교할때 배열을 넣게 되면 우회가 가능하다.(php 버전..
2021.08.14