본문 바로가기
Web hacking/Nomaltic) 웹 해킹 수업 노트 👩‍💻

[18주차]SSI Injection 취약점

by m_.9m 2022. 2. 17.

*SSI Injection(Server Side Include Injection)

아파치 서버에서 사용

공격 가능 확장자: .shtml, .shtm, stm 


서버측에서 실행가능한 코드를 삽입한다.
SSI HTML 
SSI Directory -> Shtml로 

[bwapp로 실습]


--SSI 실습 페이지--

 

 

--해당 First, Last name 에 임의의 값(1234) 입력 후 엔터--

 

 

 

해당 부분에 Burp suite 를 사용해 서버 측 실행코드(SSI Directory)를 삽입하여 공격할 수 있다.

 

[서버측에서 실행가능한 코드]
#현재 시간 출력

<!--#echo var ="DATE_LOCAL" --> 

#include로 출력
<!--#include virture ="/cgi-bin/counter.p1" --> 
# cmd 출력
<!--#exec ="cmd=ls" --> 
1234대신에 <!--#exec ="cmd=ls" -->  서버측에서 실행가능한 코드다.


삽입해서 실습이 가능하다. 나는 Burp Suite 까는게 어려워보여서 다른 사람이 실행한 시연을 참고했다.

위의 코드를 삽입하면 출력화면에 cmd=ls 실행화면이 나오는 등의 작동을 볼 수 있다.

 

대응 방안


- 근본적인 대응방안은 SSI기능을 쓰지 않는것이다. 기능을 끔.
기본적으로 모르고 켜두는 경우도 있고, 
간혹 쓴다고 하실시 코드를 삽입할 수 없게 필터링을 해야함.

[TIP] 사실 실무에서 쓰는 경우를 보지 못했다고 한다.