본문 바로가기

wargame

[LOS]3번 GOBLIN 모든 포스트 목록 WEBHACKING.kr 18 GOBLIN
[LOS]2번 COBOLT 모든 포스트 목록 2번 COBOLT 1번 문제와 유사하다. url에 id가 admin이고 그 외 조건을 만족하게 값을 입력했다. 띄어쓰기가 되지 않아서 실패했다. 띄어쓰기를 하고 다시 시도했다. 안 됐다. 생각해보니 조건이 id가 admin이거나 TRUE이므로 즉 조건은 TRUE이다. 이 말은 모든 id가 $result에 저장될 수 있으므로 문제 해결이 되지 않을 수 있다. id를 제외한 나머지를 주석으로 처리하고 id가 admin일 때를 조건으로 작성하였더니 성공하였다. (이 때 주석인 #를 입력할 때 url encoding된 %23으로 입력해야 한다)
[LOS]1번 GREMLIN 모든 포스트 목록 JOIN Lord Of SQLinjection(이하 LOS) 문제를 풀어보자! "enter the dungeon"을 클릭하면 login을 할 수 있다. join을 클릭해서 회원가입을 할 수 있다. webhacking.kr과 달리 회원가입하는데 별 어려움이 없다. 차례대로 문제를 풀어볼 수 있게 구성되었다. GREMLIN 문제를 살펴보자.
[WEBHACKING.kr]23 no hack Your mission is to inject 별 거 없었다. 한 번 그대로 넣어보기로 했다. no hack이라고 나온다. injection 문제인 거 같은데 아직은 감이 안 잡혀서 이것저것 해보기로 했다. alert나 script를 입력하면 no hack이라고 뜬다. a를 입력해보았다. 오 드디어 다른 반응이다. 이 외에도 , 1, ;는 입력한대로 출력되었다. 그래서 alert와 script를 우회하면 잘 출력될 것 같았다. 실패1 - 대문자와 소문자를 섞어 써도 실패했다. 실패2 - 일부만 입력해도 실패했다. 실패3 - md5로 복호화해도 실패했다. sha-1도 실패했다. 실패4 - ascii 코드로 치환해도 실패했다. 실패5 - sbstr 함수를 써도 실패했다. 이쯤되니 문자열 자체가..
[WEBHACKING.kr]15 소스에 password가 나와있다. 입력한다. 문제 해결! 뭘 묻는 건지 궁금해서 찾아봤다. 웹브라우저에서 자바스크립트를 실행시키지 않는 방법을 배웠다. 크롬 설정에 들어간다. 고급을 클릭. 내려가다 보면 사이트 설정이 있다. 클릭. 내려가다 보면 자바스크립트 설정이 있다. 클릭. 동그라미 친 부분을 클릭하면 자바스크립트를 전부 차단할 수 있다.
[PHP]str_replace 함수 우회하는 방법 모든 포스트 목록 str_replace 검색하는 문자열을 대체 문자열로 변환합니다. 대체된 문자열 또는 배열을 반환합니다. description str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ) : mixed parameter search : 변환될 값 replace : 변환할 값 subject : 변환이 이루어지는 대상. 만약 subject가 배열이라면 배열의 모든 항목을 변환합니다. count : 변수가 존재할 경우, 변환이 수행된 횟수로 설정됩니다. 예시 다음의 경우 "good golly miss molly hello!"가 "good goy miss moy heo!"로 변환되고 3이 출력됩니다. 우회 st..
[WEBHACKING.kr]24 client ip[IP주소]agentMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36Wrong IP! 단서가 없다. index.phps로 이동해서 살펴보자. 코드를 해석했을 때, 문제를 해결하려면 $ip가 127.0.0.1이 되어야 한다. $ip는 $ip=$REMOTE_ADDR;을 통해서 만들 수 있다. 쿠키는 생성할 수 있으므로 REMOTE_ADDR을 name으로 가지는 쿠키의 값을 127.0.0.1을 만들면 된다. 그럼 extract 함수 뒤에 if(!REMOTE_ADDR) 문에 걸리지 않으므로 $REMOTE_ADDR의 값을 내 IP로 만들지 않..
[WEBHACKING.kr]17 입력 창에 unlock과 똑같은 값을 입력하고 옆에 click 버튼을 클릭하면 패스워드가 출력되는 것 같다. 우선 unlock 값을 알아보았다. 알아낸 unlock값을 입력하였다. 패스워드가 나왔다. auth에 입력하면 clear! 이 문제가 무엇을 의도하고 낸 문제인지 모르겠다.