
webhacking.kr 37번 문제풀이
·
웹/웹 해킹 문제 풀이
37번 화면이다. 페이지를 세로고침하거나 파일을 선택하여 제출하면 새로운 텍스트가 추가된다. 소스코드를 확인하자. 데이터베이스와 연결하여 flag를 select한다. select한 flag는 $flag에 배열형태로 있다. time() 함수를 이용하여 /tmp-[time()] 형식으로 파일을 연다. 해당 파일에 127.0.0.1을 write한다. 파일을 선택하여 업로드 한 경우 해당 파일의 이름을 필터링 한다. 필터링 한 파일에 접속한 ip를 write 한다. scandir 함수를 이용하여 /tmp 디렉토리의 목록들을 배열화 시킨다. tmp/tmp-{$time} 에서 파일 컨텐츠('127.0.0.1')을 가져온다. request 변수에 flag와 host정보를 저장한다. socket을 오픈하여 host(1..