분류 전체보기
-
XSS Thousand Knocks Stage3 write upWebHacking/XSS Thousand Knocks Write-Up 2018. 7. 18. 17:28
수천 번의 노크 XSS 단계 3번 write up 링크를 접속하니 Link라는 href가 하나 있고, 접속을 하면 기존과 같게 접속이 된다. 이거 xss game 5번에서 비슷한 문제를 풀어보았기에 비슷하게 하면 된다고 생각을 했음. ?q=' ' 2번과 같이 넣어놓고 link를 누르면 되는거같다!!! 근데 자꾸 404 not found | nginx로 간다... 음 nginx? ** nginx : 아파치 같은 웹서버인듯하다. 한국에서 27%의 점유율을 가지고 있고, 아파치 보다 더 적은 자원으로 더 빠르게 데이터를 서비스 할 수 있는 웹 서버 소프트웨어이다. 페이지 소스 보기를 하면 Link 이렇게 있음을 보게 된다. 그럼 href에서 빠져나와 내가 원하는 스크립트를 실행시키게 해야 되는것같다. http..
-
XSS Thousand Knocks Stage2 write upWebHacking/XSS Thousand Knocks Write-Up 2018. 7. 18. 16:39
링크를 들어가면 아래와 같은 링크로 들어가게 된다. http://1a31198b4289ff3af4f7195a810c48eba9f6bf28.knock.xss.moe/?q=XSS q=뒤에 있는 내용이 출력되는 기능을 가지고 있는 웹페이지이다. 그래서 아래와 같은 url을 보내보았다. http://1a31198b4289ff3af4f7195a810c48eba9f6bf28.knock.xss.moe/?q= 그런데 이렇게 보내니까 failed csrf check! 라고 뜨면서 실패가 된다. 고민을 해보다가 +의 문제인거같아서 http encoding하면 나오는 %2B를 넣어서 보내보았다. http://1a31198b4289ff3af4f7195a810c48eba9f6bf28.knock.xss.moe/?q= 근데 자꾸 ..
-
XSS thousand Knocks stage1 writeupWebHacking/XSS Thousand Knocks Write-Up 2018. 7. 18. 15:18
XSS문제를 더 풀고 싶어서 XSS Thousand Knocks 풀게 됨. https://knock.xss.moe/index 우선 Stage1은 튜토리얼이었는데 어떻게 푸는건지 몰라서 시간이 좀 걸림. 위와 같이 써있는데 서버를 활용해서 XSS 공격을 보낸 후에 서버에 오는 플래그를 읽으면 되는 문제라고 한다. 처음에는 vm 서버를 활용해서 문제를 풀려고 했으나 외부 접속을 막고 있는지 문제가 풀리지 않았다. 그래서 http://requestbin.fullcontact.com을 활용하였다. 해당 문제에 1번에 위와 같이 적어있어서 해당 페이지에 접속해http://8293927d3c84ed42eef26dd9ceaaa3d9bf448dda.knock.xss.moe/?location=%22http://examp..
-
Xss game level 6 write upWebHacking/Xss-game Write-Up 2018. 7. 17. 18:31
Xss game level 6 write up - 마지막 #번역미션 설명 : 복잡한 웹 응용 프로그램에는 URL 매개변수의 값 또는 일부의 값에 따라 Javascript 라이브러리를 동적으로 로드할 수 있는 location.hash 기능있습니다. 스크립트를 비롯한 잠재적으로 위험한 유형의 XMLHttpRequest 데이터를 로드할 때마다 심각한 취약점을 초래할 수 있수 있기에 사용자 입력이 url에 영향을 미치도록 허용하는 것은 매우 까다로운 작업입니다. 미션 목표 : 응용 프로그램이 외부 파일을 요청하도록 하여 alert()를 실행하도록 하시오. #분석 우선 미션 설명에서 얻을 수 있는 정보는 url를 이용해야 되고 그 중 js라이브러리를 동적으로 로드할 수 있는 함수 중 location.hash를 사..
-
Xss game level 5 write upWebHacking/Xss-game Write-Up 2018. 7. 17. 17:59
Xss game level 5 write up #번역 미션 설명 : XSS는 데이터를 올바르게 이스케이프 처리하는거에 멈추지 않습니다. 때로는 공격자가 Dom에 새 요소를 주입하지 않고도 나쁜일을 할 수 있습니다. 미션 목표 : alert()를 넣어서 팝업 스크립트를 삽입하시오. #분석 Dom에 스크립트를 삽입하지 않고 푸는 문제라는게 무슨 뜻일까?? 풀면 알 듯하다. hint1. 제목이 힌트이다.2. 가입 프레임의 소스를 보고 URL 매캐 변수가 어떻게 사용되는지 살펴보는것이 좋다.3. onclick 핸들러를 사용하지 않고 링크를 클릭하여 javascript를 실행하게 하려면 어떻게 해야 되는가?4. 진짜 안 풀리면 IETF 초안을 살펴보자. (https://tools.ietf.org/html/draf..
-
Xss-game level 4 write upWebHacking/Xss-game Write-Up 2018. 7. 17. 16:10
xss game level 4 write up #번역 미션 설명 : 사용자가 제공한 모든 데이터는 표시도리 페이지의 내용에 맞게 올바르게 이스케이프되어야 합니다. 미션 목표 : alert()로 팝업하는 스크립트를 삽입하세요. #분석 hint1. startTimer 함수가 호출되는 방법을 살펴봅시다. 2. 브라우저가 태그 속성을 구문 분석할 때 먼저 HTML 값을 디코딩합니다. 는 get방식임을 확인할 수 있고, timer.html에서 onload로 입력한 time이 들어감을 확인할 수 있다. url은 https://xss-game.appspot.com/level4/frame 이렇게 구성되어있는데, get방식으로 timer를 불러오니까 뒤에 스크립트를 추가하면 된다. #익스 기존 url : https://..
-
Xss game level 3 write-upWebHacking/Xss-game Write-Up 2018. 7. 17. 15:13
Xss game level 3 write up #번역 미션 설명 : level 2에서 보았듯이 일부 일반적인 js기능은 실행입니다. 즉, 브라우저가 입력에 나타는 스크립트를 실행하게 됩니다. 때로는 이러한 사실은 상위 수준의 API에 의해서 기능이 숨겨집니다. 이 레벨의 응용 프로그램은 그러한 숨겨진 싱크를 사용하고 있습니다. 미션 목표: 이전과 마찬가지로 alert()를 사용한 팝업 스크립트를 삽입하세요. 애플리케이션의 어느 위치에든 페이로드를 입력할 수 없으므로 아래의 url 표시줄에서 수동으로 주소를 편집해야 합니다. #분석 function chooseTab(num) { // Dynamically load the appropriate image. var html = "Image " + parseIn..
-
Xss-game level 2 write_upWebHacking/Xss-game Write-Up 2018. 7. 17. 14:42
Xss game level 2 write up #번역 미션 설명 : 웹 응용 프로그램은 종종 사용자 데이터를 서버 측 및 클라이언트 측 데이터베이스에 보관하고 나중에 사용자에게 표시합니다. 그러한 사용자 제어 데이터의 출처가 무엇이든 관계없이 신중하게 처리해야 합니다. 복잡한 응용 프로그램에서 xss 버그를 얼마나 쉽게 도입할 수 있는지 알 수 있습니다. 미션 목표 : alert() 응용 프로그램의 내용 안에 팝업 스크립트를 삽입하세요.참고 : 응용 프로그램에서 게시물을 저장하므로 코드를 몰래 사용하여 경고를 실행하면 다시 로드할 때마다 수준이 해결됩니다. #분석 구문이 먹히지 않음으로 필터링하고 있음을 알게 되었다. (필터링 하는 법 공부 예정) hint로 onerror를 사용하라고 했는데, onerr..