Gae Ko's Blog

[webhacking.kr] challenges47 아직 ㅠ 본문

웹해킹 /[webhacking.kr]

[webhacking.kr] challenges47 아직 ㅠ

Gae Ko 2017. 11. 20. 12:47

문제페이지의 소스코드 

index.phps로 이동해본다.

if문을 보면 email값이 POST방법으로 전송되면 mail함수를 실행한다고 한다.

mail함수란?

이메일을 보내는 함수로 

bool mail ( string $to , string $subject , string $message [, string$additional_headers [, string $additional_parameters ]] )

형식으로 사용된다.

to : 메일 수신자 

subject : 보낼 이메일의 제목

message : 보내질 메세지 

additional_headers : 이메일 헤더 마지막에 추가될 문자열 

헤더를 추가하기 위해서 사용. 헤더부분에는 From, Cc, Bcc등을 추가할 수 있고 여러 추가 헤더는 \r\n 으로 구분해줘야함.

cc( carbon copy, 참조) : 수신자 외 다른 사람에게도 수신

bcc(blind carbon copy, 숨은참조) : 수신자 외 다른 사람에데고 수신(수신자에게 보이지 않음.)

다시 문제로 보면 문제에 사용되는 mail함수를 통해 제목이 "readme"이고 내용은 "password is $pass"인 메일을 admin@webhacking.kr이 받는다는 것을 알 수 있다. 

그리고 추가옵션인 헤더정보가 있는데 

$header="From: $_POST[email]\r\n";

→ 즉 문제의 코드를 정리해보면 

email값을 POST방식으로 보내면 password가 admin@webhacking.kr로 보내진다고한다. 그런데 내가 알아야하는건 password이고 내가 입력하는 메일값은 mail함수를 통해 보내는 이가 된다.

그러니까 내가 받는이가 되고싶은데.....

mail header injection 에 대해 알아보자 ㅠㅠ 

$header를 통해 어떤사람이 메일을 보냈는지 알려줌 그리고 cc(숨은참조자)로 지정해준 메일의 주소로도 메일이 보내짐

From : 어쩌고@naver.com (줄바꿈)

cc : hacker@email.com

이렇게 해보았지만 

안된다.

00













][


 

'웹해킹 > [webhacking.kr] ' 카테고리의 다른 글

[webhacking.kr] challenges23  (0) 2017.12.04
[webhacking.kr] challenges11  (0) 2017.12.04
[webhacking.kr] challenges52 아직 ㅠ  (0) 2017.11.20
[webhacking.kr] challenges38  (0) 2017.11.19
[webhacking.kr] challenges42  (0) 2017.11.07