현재 chall30은 적용이 되지 않아 원리에 대한 내용만 정리해보겠습니다.

메인화면입니다.

소스보기입니다.

db를 연결하여 chall30_answer테이블에서 flag 값을 뽑은 후 성공하면 flag 페이지를 호출하네요

여기서 한가지 문제점이 발생하는데 바로 mysqli_connect() 이 부분입니다.

[mysqli_connect() 사용법]

mysqli_connect([아이피], [아이디], [비밀번호], [DB명], [포트]);

위와 같은 방법으로 사용하지만 이 페이지에서는 인자값을 주지 않았습니다.

인자가 없을 경우 default로 ini_get 함수를 이용하여 php.ini 파일에서 host,id,pw,port,socket 정보를 가져와서 적용하게 됩니다. 이때 이 정보들을 나의 ip와 DB로 설정해 줄 수 있다면 flag를 얻을 수 있다고 합니다.

로컬에 DB를 구성한 후

.htaccess 파일을 생성하여 아래와 같이 작성후 업로드 경로에서 이 파일을 실행시키면 성공입니다.

[.htaccess 내용]

php_value mysql.default_host "내 외부 IP"

php_value mysql.default_user "내 계정(아이디)"

php_value mysql.default_password "내 계정 패스워드"

'WAR GAME > Webhacking.kr' 카테고리의 다른 글

[webhacking.kr] Level32 (old)  (314) 2020.04.28
[webhacking.kr] Level31 (old)  (304) 2020.04.28
[webhacking.kr] Level29 (old)  (315) 2020.04.28
[webhacking.kr] Level28 (old)  (345) 2020.04.28
[webhacking.kr] Level27 (old)  (318) 2020.04.28

+ Recent posts