Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 포렌식
- 웹해킹
- 포렌식워게임
- 자바기초
- CTF
- 웹개발
- 웹해킹기초
- 뷰
- bootstrap
- gitbash
- Express
- 써니나타스
- 자바
- NavBar
- materialize
- 워게임
- wargame.kr
- 그래프
- MongoDB
- 자료구조
- 워게임추천
- 이진트리
- 이진탐색트리
- nodeJS
- node.js
- GIT
- 웹기초
- mongoose
- node
- 자바문제풀이
Archives
- Today
- Total
보안 전공생의 공부
[Wargame.kr] strcmp 본문
strcmp를 우회할 수 있으면 플래그를 얻을 수 있다고 한다 !
페이지 소스코드를 확인해보면
이렇게 if문의 조건으로 strcmp함수가 사용되었다. 입력한 password와 랜덤으로 형성되는password값이 같아야 플래그값을 얻을 수 있는 것 같다.
strcmp 함수 중에서 특히 == 비교는 NULL과 0을 비교했을 때 TRUE를 반환한다.
또한 PHP 5는 strcmp(string,array)의 형태가 되면 이 둘이 같지 않더라도 NULL(0)을 반환한다고 한다.
입력하는 것은 text형식만 가능하므로 원래 있는 password가 array형태로 바뀌어야한다.
그래서 콘솔창에 password[]=(문자열) 을 입력해보았다.
그런데 콘솔창으로는 array형태로 변환할 수 없는 것 같아 보인다 ㅠ
그래서 Element 창으로 수정을 하기로 했다.
name="password" 를 name="password[]" 로 수정하였다.
POST형식으로 입력받는 password는 어떤 값이든 배열이고,
배열password와 랜덤으로 형성된 password는 같지 않더라도 array와 string의 비교이므로
NULL(0)을 반환하고 0==0이므로 if문이 true가 되어 플래그값을 확인할 수 있게 된다 !!
'공부 > web' 카테고리의 다른 글
[Wargame.kr] WTF_CODE (0) | 2021.02.16 |
---|---|
DreamHack | 웹해킹 기초강의 요약(1) (0) | 2021.01.15 |
Comments