본문 바로가기
컴소니/보안

[비박스(bWAPP)] low-A1-Injection iFrame Injection

by 금소니 2024. 1. 26.
반응형

#277

 

1. 개요

1) 문제명 : iFrame Injection

2) 난이도 : low

3) 관련 개념 : HTML, WEB, PHP, Injection 공격

4) 문제 : iframe을 삽입하여 원하는 데이터를 출력

2. 서비스 확인

서비스를 확인하였을 때 특이한 부분은 없고 URL을 보니 robots.txt파일을 불러와 화면에 보여주는 것으로 보입니다.

아마 소스 코드를 확인해야 정확히 알 수 있을 것 같습니다.

 

3. 소스 코드 확인

1) 난이도 설정

난이도를 설정하는 부분에서는 XSS와 관련된 입력값을 체크하고 있다는 것을 보실 수 있습니다.

 

2) 서비스 코드

첫 경로 부분에 해당되는 코드입니다.

앞서 보이는 URL에 해당되는 부분을 미리 입력하여 출력할 수 있도록 해주고 있습니다.

메인 코드 부분입니다.

URL을 통해 입력 받은 부분을 iframe을 통해 출력해주는 부분으로 레벨이 1(medium)이거나 2(high)일 경우에는 강제로 robots.txt를 출력하도록 되어있고 가장 낮은 레벨인 0(low)일 경우에는 입력한 URL을 그대로 출력하도록 되어있습니다.

 

4. 문제 풀이

서비스와 코드를 통해 이번 문제의 경우 URL 중 ParamUrl 파라미터에 특정한 경로를 삽입하여 공격하는 것을 예상해볼 수 있습니다.

URL 경로는 현재 bwapp을 운영하고 있는 페이지를 입력하고 크기도 마음대로 조절해보도록 하겠습니다.

 

그 결과, 아래와 같이 iFram Injection 부분에 페이지가 삽입된 것을 보실 수 있습니다.

 

5. 웹 로그 확인

공격이 이루어졌을 때 웹 로그를 확인해보도록 하겠습니다.

GET으로 요청을 보냈기 때문에 공격에 사용된 전체적인 URL 정보를 확인할 수 있었습니다.

1) 접근 IP : 192.168.128.141

2) HTTP METHOD : GET

3) 응답 : 200

4) 요청 URL : /bWAPP/iframei.php?ParamUrl=http://192.168.128.144/bWAPP&ParamWidth=500&ParamHeight=500

반응형

댓글