일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- xss game 풀이
- 사칙연산
- 객체
- python
- 메소드
- 포인터
- xss game
- 함수
- github
- sql injection
- 백준 알고리즘
- 김성엽 대표님
- 조건문
- burp suite
- window
- 백준 파이썬
- IF문
- element 조회
- Pwndbg
- htmlspecialchars
- object
- lord of sql injection
- 자바스크립트
- property
- jQuery
- 배열
- document
- blind sql injection
- 파이썬
- suninatas 풀이
- Today
- Total
power-girl0-0
iFrame Injection 본문
iFrame이란?
HTML문서 안에서 또 다른 HTML 문서를 출력해주는 태그이다.
iFrame Injection이란?
- iFrame을 이용하여 어느 곳이든 인젝션 공격이 가능하다.
- 독립적으로 이용할 수 있어서 HTML Injection공격에 자주 사용된다.
- 주로 악성코드를 삽입후 사이즈를 0으로 설정하여 숨기는 방법을 사용한다.
1. 해당 페이지의 파라미터를 확인해보았다.
파라미터에 값이 출력되는 것을 보아 get방식이라는 것을 알 수 있다.
해당 페이지에 robots.txt를 불러와 넓이와 높이가 250 사이즈로 출력하라는 구문으로 iframe태그를 사용한 것으로 추측된다.
2. 추측이 맞는지 robots.txt 대신에 로그인 url을 입력하고 사이즈를 변경해 보았다.
사이트 안에 login페이지가 성공적으로 열리는 것을 보아 iframe태그를 사용한 것을 알 수 있다.
3. 그렇다면 개발자 도구를 이용해서 코드를 살펴보도록 하겠다.
iframe태그를 사용하였음을 정확히 확인하였다.
4. 기존 iframe태그를 강제로 닫고 URL에 노출된 변수에 악의적인 iframe태그를 주입해서 공격자의 html페이지가 출력되도록 해보겠다.
(1) bee-box서버에 악의적인 html소스를 만들어 준다.
- vi 명령어를 사용해서 bad.html 소스를 만들어준다.
- 소스는 Iframe Injection이라는 제목을 웹페이지에 출력하고 경고창으로 Succeed가 뜨도록 스크립트 구문을 사용하여 작성하였다.
- /var/www/bWAPP경로에서 파일을 만들어주어야 한다.
(2) 기존에 있는 iframe태그를 강제로 닫아주고 악의적인 iframe태그를 이용하여 bad.html을 삽입해보겠다.
ParmaUrl=rovots.txt"></iframe><iframe src="bad.html" width="250" height="250"></iframe>&ParamWidth=250&ParamHeight=250 |
확인을 눌렀을 경우 Iframe Injection이 출력되는 것을 확인할 수 있다.
* 여기서 기존의 iframe을 강제종료 했기 때문에 다음과 같은 height와 width 속성이 출력된다.
이는 페이지가 이상하다는 것을 눈치 챌 수 있기 때문에 높이 속성을 아주 큰 값으로 설정한다.
해당 설정을 통해 이상한 점을 눈치채기 힘들도록 할 수 있다.
5. 악의적인 iframe태그는 피해자에게 보여지지 않기 위해 속성(높이, 넓이)은 0으로 설정한다.
- 기존 iframe태그의 높이 속성은 아주 큰값으로 두어 이상함을 눈치채기 힘들게 한다.
http://192.168.56.101/bWAPP/iframei.php?ParamUrl=robots.txt"></iframe><iframe src="bad.html" width="0" height="0" </iframe>&ParamWidth=250&ParamHeight=1000
스크립트문이 실행되어 경고창은 뜨지만 확인을 누를시 정상적인 페이지처럼 보이는 것을 알 수 있다.
◈ 대응방안
: htmlspecialchars함수로 우회한다.
'웹해킹 > Bee-Box' 카테고리의 다른 글
PHP 코드 인젝션 ( PHP Code Injection ) (0) | 2020.09.17 |
---|---|
OS 커맨드 인젝션 ( OS Command Injection ) (0) | 2020.09.17 |
HTML 인젝션 - 저장기법(Blog) (0) | 2020.09.16 |
Bee-box를 window에서 사용하는 방법 (0) | 2020.03.25 |
window에 프록시 도구인 burp suite 설치하기 (0) | 2020.03.24 |