목록WebHacking (65)
Iriton's log
문제 페이지 분석 vuln(csrf) page (/vuln?param=) 파라미터 값을 출력한다. memo(/memo?memo=hello) 접속할 때마다 hello를 누적해서 출력한다. notice flag (/admin/notice_flag) admin 권한이 없어서 flag값을 보지 못한다. flag(/flag) 여기서 취약점 공격을 해야 되나 보다. 코드를 살펴 보자. 코드 분석 admin_notice_flag 함수 분석 89, 91) 조건문으로 localhost 환경이 아니라면 Access Denied를 userid가 admin이 아니라면 Access Denied2를 띄운다. 93) memo_text에 flag를 추가한다. memo_text라는 이름의 전역 변수를 사용하는 /memo로 가보자. m..
File Upload Vulnerability 파일 업로드 하는 기능에서 발생할 수 있는 취약점으로, 서버의 파일 시스템에 사용자가 원하는 경로 또는 파일 명 등으로 업로드가 가능하여 악영향을 미칠 수 있는 파일이 업로드 되는 것이다. CGI(Common Gateway Interface) 사용자의 요청을 받은 서버가 동적인 페이지를 구성하기 위해 엔진에 요청을 보내고 엔진이 처리한 결과를 서버에게 반환하는 기능을 말한다. 문제 페이지 분석 별다른 특이점은 없었다. upload php 코드를 확인하여 해당 페이지에 파일 업로드 취약점을 공격할 수 있는 법을 찾아야겠다. 코드 분석 파일 확장자나 경로에 대한 필터링이 존재하지 않는다. 취약점을 발견했으니 flag가 존재하는 경로에 접근하여 flag.txt를 ..
Command Injection Web application에서 시스템 명령을 사용할 때, ;(세미콜론) 혹은 &(또는 &&)을 사용하여 하나의 command를 injection 하여 두 개의 command가 실행되게 하는 공격이다. 문제 페이지 분석 Home ping ping 정보가 출력된다. 여기서 Flag를 출력할 수 있을 거 같다. 코드를 확인해 보자. 코드 분석 6) flag.py에 flag값이 있나 보다. 22) bash쉘 파일로 접근해서 command를 실행시킨다. 리눅스 명령어로 command injection이 필요할 것으로 보인다. 다른 코드는 별로... 쓸모는 없을 거 같아서 pass ping result 출력을 활용해서 flag.py의 위치를 알아내 볼 수 있을 거 같다. ls 명령..
* xss-1 풀이 참고 https://eunginius.tistory.com/30 [Dreamhack/Wargame] Lv.1 xss-1 문제 풀이에 앞서, XSS(Cross Site Script)취약점은 Web Application에서 사용자 입력 값에 대한 필터링이 제대로 이뤄지지 않을 경우 input 가능한 form에 script를 삽입하여 공격할 수 있는 것을 말한다. 문제 eunginius.tistory.com 문제 페이지 분석 페이지들도, 코드도 xss-1랑 너무 똑같았다. 한 가지 다른 점은 vuln page에 alert이 작동하지 않는다는 것이다. 이런 경우에는 사이트에 활성화된 방화벽을 우회해야 하는데 우회하는 방법은 case에 따라 너무 많다. 각종 태그를 활용할 수 있다. 이 풀이에..
XSS(Cross Site Script)취약점 Web Application에서 사용자 입력 값에 대한 필터링이 제대로 이뤄지지 않을 경우 input 가능한 form에 script를 삽입하여 공격할 수 있는 것을 말한다. 문제 페이지 분석 vuln(xss) page부터 클릭해 봤더니 alert 창이 뜬다. 무슨 의미인진 모르겠어서 memo로 넘어갔다. memo에 접속할 때마다 hello가 한 줄씩 추가되는 거 같다. flag에 접속한 화면이다. 저 빈칸에 뭐가 들어가야 flag가 나올지 코드를 살펴 보자. 코드 분석 문제에서 XSS 취약점을 이용할 것을 요구했으니 app.route를 살펴봤다. /memo는 html 파일에 기록하고 출력하면서 filtering 과정을 거치는데 /vuln은 입력된 param을..
※ Dreamhack Wargame Lv.1 Cookie 문제를 먼저 푸는 것을 강력 추천한다. 이왕이면 Cookies & Session Lecture까지 수강하는 게 좋다. Lv.1 Cookie Write-up https://eunginius.tistory.com/27 [Dreamhack/Wargame] Lv.1 cookie 접속 정보 URL로 접속하면 뻔한 login 화면이 있다. 코드부터 살펴 보자 우선 quest의 id, pw가 보이지만 admin의 pw는 FLAG로 txt 파일에서 읽어들이는 거라 지금으로썬 알 수 없다. admin으로 로그인을 성 eunginius.tistory.com 우선 코드부터 확인했다. 역시나 admin의 pw는 볼 수 없다. 이전에 풀었던 cookie 문제와 아주 유사..
접속 정보 URL로 접속하면 뻔한 login 화면이 있다. 코드부터 살펴 보자 우선 quest의 id, pw가 보이지만 admin의 pw는 FLAG로 txt 파일에서 읽어들이는 거라 지금으로썬 알 수 없다. admin으로 로그인을 성공해야 FLAG를 얻을 수 있다. username은 cookies에서 가져온다는 걸 코드를 통해 볼 수 있다. 우선 guest로 로그인을 하여 guest에 해당하는 cookie를 얻어서 이를 변조해 볼 것이다. f12를 눌러서 Application-Cookies를 가보자. guest로 로그인하여 저장한 cookie라서 value가 guest로 지정되어 있다. 이를 admin으로 수정하고 새로고침을 해서 변조가 되는지 볼 것이다. EZ 쿠키는 클라이언트 브라우저 내에 저장되는 ..
*먼저 풀어 봐야 할 문제들의 풀이 https://eunginius.tistory.com/27 [Dreamhack/Wargame] Lv.1 cookie 접속 정보 URL로 접속하면 뻔한 login 화면이 있다. 코드부터 살펴 보자 우선 quest의 id, pw가 보이지만 admin의 pw는 FLAG로 txt 파일에서 읽어들이는 거라 지금으로썬 알 수 없다. admin으로 로그인을 성 eunginius.tistory.com https://eunginius.tistory.com/28 [Dreamhack/Wargame] Lv.1 session-basic ※ Dreamhack Wargame Lv.1 Cookie 문제를 먼저 푸는 것을 강력 추천한다. 이왕이면 Cookies & Session Lecture까지 수..