Web framework security
-
Upload
inha-university -
Category
Software
-
view
131 -
download
1
description
Transcript of Web framework security
jinja2
article.id 가 “ onmouseover=“alert(document.cookie) 라면??
article.title 이 </a><script>alert(document.cookie);</script> 라면??
‘ '
“ "
< <
> >
안전
위험
article.id 가 onmouseover=alert(document.cookie) 라면??
1. HTML attribute는 반드시 double quote로 감싼다
2. javascript code를 직접 생성해 넘길 때에는 반드시 직접 검사한다
views.py
write.html
Server
Client 1
Client 2
1. 하나의 session당 csrf_token을 하나밖에 운영할 수 없다.
2. 한 번 쓰고 버리는 것이 아니고 session이 유지되는 동안 계속 재활용한다.
1. XSS공격이 가능한 페이지가 있어야 한다.
2. target의 csrf_token을 알 수 있어야 한다.
/vuln XSS 감염된 페이지
/write_form 글쓰기 form이 있는 페이지
(POST) /write 글쓰기
글쓰기 요청
/vuln XSS 감염된 페이지
/write_form 글쓰기 form이 있는 페이지
(POST) /write 글쓰기 ajax
csrf_token 획득
글쓰기 요청
1.XSS 방어
2.Request Header의 Referer를 확인
SELECT :
INSERT :
SELECT :
SELECT * FROM testapp_myboard WHERE id=‘pknam’ AND pw=‘1234’
Object-Relational Mapper
’ or 1=1 --
\’ or 1=1 --
URL 패턴 지정시 자료형에 알맞는 패턴 지정한다. ->공격을 일차적으로 필터링하는 효과
django와 동일하게 jinja2 사용
1. HTML attribute는 반드시 double quote로 감싼다
2. javascript code를 직접 생성해 넘길 때에는 반드시 직접 검사한다
제공하지 않음