[natas] Level 6 -> Level 7
2021. 4. 11. 16:40
Study/Web Hacking
: level 6 → level 7 http://natas7.natas.labs.overthewire.org natas7에 접속하면 Home과 About링크가 보인다. 각각 누르면 index.php?page=home과 index.php?page=about로 이동한다. 이 이상 확인할 것이 없어 소스코드를 살펴봤다. 주석에 hint가 숨겨져 있었다. natas8의 password는 /etc/natas_webpass/natas8에 들어있다고 한다. URL을 통해 이동하려고 했는데 오류 페이지가 나왔다. 해당 경로를 주소 바로 뒤에 붙이는 대신에 URL파라미터로 넘겨봤다. 그 결과 natas8의 password를 확인할 수 있었다. natas8 password: DBfUBfqQG69KvJvJ1iAbMoIpwS..
[natas] Level 5 -> Level 6
2021. 4. 11. 16:25
Study/Web Hacking
: level 5 → level 6 http://natas6.natas.labs.overthewire.org natas6에 접속하면 input과 View sourcecode링크를 볼 수 있다. View sourcecode를 클릭해서 아래와 같은 소스코드를 살펴봤다. 소스코드 중간을 보면 includes 디렉토리에 있는 secret.inc 파일을 include하고 있고, input 태그에서 입력받은 것을 $secret과 비교해서 일치하면 natas7 password를 출력한다는 것을 알 수 있다. includes/secret.inc 경로로 이동했더니 $secret의 값을 알 수 있었다. $secret값을 input에 입력하고 제출하면 위처럼 natas7 password를 알아낼 수 있다. natas7 pa..
[XSS Challenge] Stage #4
2021. 4. 2. 02:27
Study/Web Hacking
Stege #4 입장! 이번엔 Search에 script를 작성하고, burp suite로 바로 패킷을 확인해봤다. Stage #3에는 없었던 p3이 추가된 것을 볼 수 있었다. 일단 p3을 건드리기 전에 먼저 p2의 필터링 여부를 확인해주기 위해 값을 script로 바꿨다. 확인 결과 p2도 필터링되고 있는 것을 알 수 있었다. Stage #4는 p3을 이용해서 해결해야 할 것 같다. p3에 있는 hackme가 어디에서 쓰이고 있는지 찾기 위해 소스코드를 살펴봤다. 확인 결과 form아래 type이 hidden인 input 태그의 value 값인 걸 알아냈다. 이전 stage에서 input 태그의 value에 script를 삽입해서 팝업창을 띄운적이 있다. 그 방법과 동일하게 해결하면 될 것 같다. p..
[XSS Challenge] Stage #3
2021. 4. 2. 01:55
Study/Web Hacking
Stage #3 입장! Stage #3에서는 alert(document.domain);을 실행시켜야 한다. Search a place에 를 그대로 입력해보았다. 코드가 실행되진 않고, 바로 아래에 그대로 출력되기만 했다. 이번엔 소스코드를 살펴봤다. 에서 ''가 필터링 되고 있다. Search a place에 입력되는 태그는 필터링 되기 때문에 다른 방법을 찾아봐야 한다. Stage #3은 Stage #2와 달리 Choose a country 부분이 추가되었다. 해당 부분의 입력을 이용해서 script를 실행할 다른 방법을 모색해야 한다. burp suite를 실행해서 서버로 전달되는 패킷을 확인해보자. 패킷을 보면 p1과 p2라는 변수에 각각 Search a place와 Choose a country ..
[LOS] cobolt
2021. 4. 2. 00:37
Study/Web Hacking
cobolt에 접속! cobolt는 id가 'admin'인 data를 select해야 해결할 수 있다. query를 잘 보면 where에서 id를 직접 검증하여 prob_cobolt 테이블에서 id column을 select하고 있다. 즉, id가 'admin'인 column을 직접 select 할 수 있다. 비번없이 아이디만으로 select하려면 pw부분을 주석으로 날려야 한다. where문에 id='admin'만 남겨놓기 위해서 페이로드는 다음과 같이 작성할 수 있다. id=admin'# → id=admin%27%23 작성한 페이로드를 입력하고 실행시켜서 다음과 같이 cobolt를 clear했다.
[natas] Level 4 -> Level 5
2021. 4. 2. 00:05
Study/Web Hacking
: level 4 → level 5 http://natas5.natas.labs.overthewire.org natas5에 처음 접속하면 로그인하지 않았다는 문구를 볼 수 있다. 로그인을 수행하는 부분을 제대로 통과하지 못 한 것 같다. Burp suite를 실행시켜서 패킷을 확인해봤다. 확인해보니 Cookie부분에 loggedin이 0으로 되어 있었다. 이 부분이 0이어서 로그인되지 않는 것 같아 1로 수정한 뒤 패킷을 놓아주고 natas5로 돌아가봤다. 그 결과 natas6으로 가는 password가 화면에 출력되어 있었다. natas6 password: aGoY4q2Dc6MgDq4oL4YtoKtyAg9PeHa1
[natas] Level 3 -> Level 4
2021. 4. 1. 23:39
Study/Web Hacking
: level 3 → level 4 http://natas4.natas.labs.overthewire.org natas4에 로그인하면 http://natas5.natas.labs.overthewire.org에서 접속해야 접근이 가능하다는 문구를 볼 수 있다. 하지만 현재 페이지는 http://natas4.natas.labs.overthewire.org이므로 접근이 불가능하다. 이때 Burp Suite으로 Referer을 조작하면 http://natas5.natas.labs.overthewire.org에서 접속한 것처럼 할 수 있다. /* 여기서 Referer란 요청한 페이지 전의 페이지를 뜻한다. 예) naver.com에서 blog.naver.com으로 이동하기 위해 blog.naver.com을 클릭했을..
[natas] Level 2 -> Level 3
2021. 4. 1. 18:55
Study/Web Hacking
: level 2 → level 3 http://natas3.natas.labs.overthewire.org F12로 개발자도구를 열자. 주석에 더이상의 정보노출은 없다고 되어있다. 소스코드에서 알아낼 수 있는 건 없는 것 같다. 지난 레벨에서 썼던 files 디렉토리에 가봤는데 natas3에는 files 디렉토리가 없었다. 여기서 더 알아낼 수 있는 것들이 없는 것 같아서 구글에 조금 검색해보니 robots.txt 파일을 이용하는 것 같았다. robots.txt 파일은 작년에 포스팅하면서 정리한 적 있는데 짧게 설명하자면, 엔진봇의 웹페이지 수집 허용 범위를 정할 수 있는 파일이다. robots.txt 파일에서 disallow되어 있는 웹페이지는 엔진봇이 수집할 수 없다. 아마도 natas4의 pw를 ..
[XSS Challenge] Stage #2
2021. 3. 27. 01:39
Study/Web Hacking
Stage #2 입장! Stage #2의 과제는 alert(document.domain); 를 실행시키는 것이다. Stage #1에서 했던 것처럼 Search창에 를 입력해봤다. 지난 Stage에서처럼 사용자 입력이 화면에 나타나지는 않았다. Search 후 Search form코드쪽의 변화가 생겼는지 확인해봤자. form의 input 태그 value 속성에 사용자 입력이 그대로 노출되고 있는 것을 확인했다. 이때 입력을 닫는 태그로 시작하면 뒤에 오는 사용자 입력들이 value에 들어가지 않고, input 태그가 닫혀버린다. 따라서 닫는 태그 뒤로 script 태그를 삽입하면 script 태그가 실행 될 것이다. 그런데 value를 보면 "때문에 문자열이 열려 있다. > 앞에 "를 넣어서 이 문자열을 ..