일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- DVWA
- TeamH4C
- Lord of SQL Injection
- 정보보안
- H4CKINGGAME
- 워게임
- 빡공팟 6기
- DreamHack
- wargame
- 써니나타스
- 해커팩토리
- Cross Site Scripting
- File Upload Vulnerability
- 빡공팟 4기
- webhacking.kr
- bypass CAPTCHA
- 정보보호
- DOM-Based XSS
- 드림핵
- 웹 해킹
- sql injection
- Insecure CAPTCHA
- Los
- Remote File Inclusion
- SuNiNaTas
- Weak Session IDs
- XSS
- Hackerfactory
- Dremhack
- Web Hacking
- Today
- Total
목록워게임 (93)
도카이트
보호되어 있는 글입니다.

문제 화면 - 명령어를 실행할 수 있는(?) 화면이 보인다. - help 명령어를 실행한 결과 ls id flag help 명령어 4개가 출력되며, - flag 명령의 경우 admin만 실행 가능하다고 한다.. - 소스코드를 먼저 확인해봐야할 듯 하다 ! 소스코드 - username을 guest로 정의하고 있다. - socket.emit 함수를 통해 데이터를 전송하고, socket.on 함수를 통해 데이터를 수신받는다. - socket.emit 함수의 cmd 이후 username 부분과 “:” 이후 뒷 부분은 수정하여 admin으로 flag가 실행되도록 유도한다 ! socket.emit 코드 수정 - +$(’m’).val() 부분을 삭제하고, ‘flag’ 를 입력하여 admin으로 flag가 cmd에서 ..

문제 화면 - Password is [ 문자 ] 부분이 JavaScript를 통해 빠르게 샤샤샥 지나간다. - 육안으로는 FLAG 값을 외우기 힘들 정도로 빠른 속도로 지나간다. - 소스코드를 확인해보도록 하자. 소스 코드 - old 54 문제에서 JavaScript에 해당하는 소스코드는 다음과 같다. - run 함수와 answer 함수가 선언되어 있고 코드들이 쭉 나열되어 있다. - answer 부분이 결정적으로 FLAG 값을 불러와서 출력해주고 있는 부분인 것 같은데.. - 이번 문제는 코드를 해석하면서 수정해가며 풀이하지 않고, 개발자 도구의 디버깅 기능을 통해 해결해보려 한다. - Source 탭에서 run 함수의 시작 부분 행을 클릭하여 breakpoint를 설정한다. Source 탭 디버깅 기..

문제 화면 - Admin page 를 출력하며, ID와 PW를 입력할 수 있는 폼이 출력된다. - 소스코드를 확인해보도록 하자 ! 소스코드 - id 값에 대하여 addslashes 함수를 적용하고 있으며, - pw의 경우는 md5 함수가 적용되어 있고, 추가로 true 인자 값이 작성되어 있다. - admin 으로 로그인 성공하면 해당 문제가 solve 되는 듯 하다. md5 함수에 true 값 존재? md5([입력 값],true) 형태의 함수는 실행 결과에 ‘=’ 문자열이 포함되면 해당 쿼리문이 참이 되는 취약점이 존재한다. 해당 소스코드를 예시로 살펴보면 입력받는 pw 값이 싱글 쿼터로 감싸져 있다. pw='{$input_pw}' // $input_pw = md5($_POST['pw'],true); ..

문제 화면 - SQL Injection 문제이다. 최초 접속 시 id와 pw에 guest 값이 입력되어 있다. - 소스 코드를 확인해보도록 하자 ! 소스 코드 - id와 pw 값에 대해 addslashes 함수가 적용되어 있으며, - mb_convert_encoding 함수를 통해 id 값에 대해 euc-kr 을 utf-8 형식으로 인코딩한다. - 또한 from과 pw, \, 공백, %, = 에 대해 preg_match 함수를 통해 필터링하고 있으며, - id 값에 대해 union 문자열을 대소문자 구별 없이 필터링하고 있다. - $result 의 lv 값이 3 이 되면 문제가 solve 되는 방식이다. - lv 칼럼값을 출력하는 쿼리문이므로, union select를 이용해 lv이 3이 되도록 구문을 ..

문제 화면 - 문제 페이지에 최초 접속 시 debug me 창을 출력한다. - 확인 버튼을 클릭할 경우 페이지에는 아무 것도 표시되지 않는다. - 소스코드를 확인해봐야할 듯 하다. 페이지 소스코드 - 개발자 도구를 이용하여 페이지 소스코드를 확인해본 결과 다음과 같다. - 일반적으로 알아보기 힘들게 JavaScript 가 난독화가 되어 있는 모습을 확인할 수 있다. - 해당 코드 상태로는 코드에 대한 해석이 어려우므로 이전 문제 풀이때 종종 사용하였던 - JavaScript 난독화 해제 사이트를 이용하여 코드의 가독성을 개선해보도록 하자 ! - https://beautifier.io/ 사이트를 이용하여 해당 코드를 변환하였다. JavaScript 난독화 해제 - 코드를 복사하여 해당 사이트에 붙여넣기 후..

문제 화면 - 첫 문제 페이지의 소스 코드이다. - GET 파라미터 값으로 get = hehe를 입력하면, 앵커 태그로 Next 링크가 출력된다. - Next 를 클릭하여 이동 시 lv2.php 페이지로 이동할 수 있다. lv2.php 소스코드 - hehe 를 참 좋아하는 것 같다.. 이번에는 POST 방식으로 hehe를 보내라고 한다. - Burp Suite를 이용하여 패킷을 POST 패킷 형태로 변조하여 Forward 시켜주도록 하자 ! Burp Suite를 이용한 패킷 변조 - 페이지를 새로 고침한 뒤 새로고침으로 로드되는 GET 패킷을 Intercept 한다. - Method 부분을 POST로 수정하고, Content-Length와 Content-Type 부분을 추가 작성한다. - 또한 Body ..

문제 화면 - userid와 각 랭킹들이 표시된 랭킹 화면이 길게 쭉 출력되어 있다 ! - NAME에는 각 user들의 id 들이 입력되어 있고 자신의 webhacking.kr ID를 검색해보면 하단에 귀엽게(?) 위치해있다. - 아이디를 클릭 시, Hit가 1 올라가며 그에 상응하는 랭크가 상승한다. hit 파라미터 값에 클릭한 아이디 노출 - vote 한 아이디에 대해 URL 상으로 hit 파라미터 값이 노출된다. - vote는 한 번만 가능하며, 추가적으로 vote시 you already voted를 출력하며, hit를 +1 할 수 없다. - 이를 우회하여 자신의 id의 hit 를 100까지 상승시키면 solve 될 듯 하다 ! vote_check 쿠키를 통한 중복 vote 검증 - 투표 여부를 어..