HTML Injection - Reflected(GET) by bWAPP
HTML Injection - Reflected(GET)
Injection 중 Reflected 방식, URL내 악의적인 HTML 태그를 입력하여 해당 명령이 비정상적으로 실행되어 악의적인 공격을 진행하는 방식.
1. bWAPP - Reflected(GET) / part 1
이름을 입력하라고 하니 이름을 입력해본다.
* 값을 넣으니 welcome god JH 즉 입력값을 기준으로 출력값이 반환됨을 확인할 수 있다. page source를 확인해보자
firstname 값과 lastname 값을 입력받아 <br/> 태그 아래에 출력값으로 나옴을 확인할 수 잇다. 해당 코드의 입력부분에 다른 HTML tag를 삽입해보자.
* 출력값에 <h1> tag가 적용된걸 확인할 수 있다 page source를 확인해보자
본래의 출력값에 <h1> tag 존재함을 확인할 수 있다. 또한 URL 또한 입력한값으로 적용됨을 확인할 수 있다.
2. bWAPP - Reflected(GET) / part 1
위 내용을 통해 검증과정을 거치지않는 code의 경우 개발자의 의도와 다른 HTML tag를 활용할 수 있음을 확인햇다, 조금더 공격적인 tag를 삽입해보자
<script>alert("Warning")</script> 코드를 Firstname 및 Lastname값으로 입력한다.
* 경고창이 출력됨을 확인할 수 있다. 이번엔 cookie 값을 획득 해보자.
<script>alert(document.cookie)</script>
* cookie 값이 출력됨을 확인할 수 있다.
3. bWAPP - Reflected(GET) / part 3
test level을 medium 으로 올린 후 다시한번 위 test를 진행해본다.
* 위와 동일 상황이라면 wellcome 이후 <h1>tag 적용된 값이 출력되어야한다.
* 이번엔 입력값 자체가 그대로 출력되어 Injection 실패됨을 확인할 수 있다 page source를 확인해보자.
입력값 하나하나에 lt; 및 gt; 로 감싸져 값을 문자 그대로 인식하여 tag가 적용되지않음을 확인할 수 있다.
해당 설정값에 의해서 HTML Injection 공격을 막은것을 확인할 수 있다. 이것이 절대적인건 아니지만 이런 작은 하나하나의 부분으로 인해 공격이 이루어 질 수 있음으로 개발단계 또는 보안test 단계에서 해당 취약점을 확인해야한다.
'Hacking > bWAPP' 카테고리의 다른 글
SQL-Injection AJAX, Login, Blog (0) | 2021.06.14 |
---|---|
SQL Injection - Login Form (0) | 2021.06.14 |
SQL Injection - GET Select / POST Select (1) | 2021.06.07 |
HTML Injection - Reflected(POST) (0) | 2021.06.03 |
Injection (0) | 2021.06.02 |