728x90
반응형
소스코드의 일부분이다.
코드를 보면 POST로 데이터를 전송해야 정상적으로 userinfo를 보여주게되는데, 이때 따로 검증을 하는 구간이 없다.
따라서 이 부분을 활용해 상위폴더의 flag를 출력해줄 수 있다.
하지만, 이 부분에서 guest를 입력시 0으로 변환되어 값이 전송되고, admin을 입력시 1로 변환되어 전송된다.
그 이외의 값은 undefined로 변경되어 날라간다.
따라서 burpsuite를 통해서 날아가는 값을 변경해주어도 되지만, Chorme Console창에서 아래와 같이 진행하여도 된다.
위 javascript를 보면 users[document.getElementById('userid').value]; 를 통해 최종 값이 입력된다.
따라서 users['원하는 입력 값']='../flag'; 를 입력해 강제로 고정시켜준 뒤 전송한다.
Finsh!
728x90
반응형
'공부 > Write-up' 카테고리의 다른 글
[DreamHack] xss-1 (0) | 2021.02.19 |
---|---|
[DreamHack] welcome (0) | 2021.02.19 |
[DreamHack] file-download-1 (0) | 2021.02.19 |
[DreamHack] simple_sqli (0) | 2021.02.19 |
[DreamHack] Cookie (0) | 2021.02.16 |