-
FB CTF 2019 - product manager(100)WeekHack/WebHacking 2019. 6. 7. 02:05반응형SMALL
안녕하세요. Luke입니다. 오랜만에 올리는 실제 대회 Write-up이네요! 성공적으로 KorNewbie 팀의 두번째 공식 대회를 마칠 수 있었어서 기분이 좋습니다. 해당 문제는 KorNewbie 팀의 서호님의 도움을 받아 Solve한 문제입니다. 감사합니다.
이번에 푼 문제는 실제 대회에서는 다른 분이 푸셨으나, 뒷북으로 제가 다시 풀어본 문제입니다.
문제 링크: http://challenges.fbctf.com:8087/
php 파일 소스가 주어지는데... 사실상 별로 필요없었습니다.. 뭔가 낚시에 당한 것 같은 느낌..?
문제 페이지를 보면
위와 같이 view, add,, view_own 이 있습니다. 가장 먼저 들어오면 메인화면 즉 index페이지가 view 항목인 것 같고,
Add페이지에 서는 위와 같이 Product의 이름, Secret, Description을 적어 서버에 업로드합니다. 여기서 SQL 인젝션일 거같다는 기분이 확 왔는데... 아무리 때려도 안되더라고요. 삽질좀 했습니다..
View_own 페이지에서는 아까 Add에서 정한 이름과 Secret을 가지고 본인이 추가한 Product 정보를 볼 수 있습니다.
예를 들면
이렇게 추가를 한 다음,
그 정보로 View_own을 해주면,
이런 식으로 정보가 뜨게 됩니다.
왠지 진짜 딱봐도 SQL 인젝션일 것 같죠? 속았습니다 ㅋ
일단 flag는 그냥 View를 하면 보이는
여기 중에 있을 것 같았습니다. 그래서 View_own에서 Facebook을 넣어보았더니..?
당연히 Secret을 모르기에 열리지가 않습니다. 그래서 든 생각이 예전에 Webhacking.kr에서 본 것과 비슷한 방식이었는데..
일단 Add에서 아래의 내용을 추가해줍니다.
Name에는 facebook에다가 뛰어쓰기를 하나 더해주고
Secret은 임의의 제 패스워드,
그리고 Description도 임의로 제 맘대로 써줍니다.
그러고 해당 정보를 View에서 다시 입력하여
이번 Name에는 뛰어쓰기를 하지 않고, facebook만 입력했습니다.
Secret은 아까 임의로 정한 패스워드를 입력하였습니다.
어쨋든 그렇게 입력하면..!
이런식으로 Flag가 나오게 됩니다.
fb{4774ck1n9_5q1_w17h0u7_1nj3c710n_15_4m421n9_:)}
반응형LIST