반응형
저번 포스팅에서는 SQL Injection에 대응하여 웹 시큐어 코딩을 해보았다.
SQL Injection 방어하기 : [모의해킹_실습] - 웹 시큐어 코딩 : SQL Injection
이번 포스팅에서는 XSS를 막아보자!
XSS 취약점의 근본적인 대응방안은, HTML Entity를 사용하는 것이었다.
[주요 HTML Entity]
HTML | HTML Entity |
< | < |
> | > |
& | & |
" | " |
' | ' |
php에서는 HTML 문자를 엔티티로 바꿔주는 htmlentities() 함수가 존재한다.
사용자의 입력값을 DB에 저장할 때 바꿔줄지, 출력할 때 바꿔줄지만 결정하면 되는데, 필자의 경우 출력할 때 바꿔주었다.
[read.php]
<div class = "posting_title"><?=htmlentities($title)?></div>
<div class = "posting_contents"><?=htmlentities($content)?></div>
게시판 글을 확인할 때 사용되는 제목과 내용 변수에 htmlentities 함수를 씌워주고 결과를 확인해보았다.
글을 저장할 때 <script>를 사용해도, 문자로 인식되어 출력되는 것을 확인할 수 있다.
반응형
'WEB HACKING > 웹 해킹[실습]' 카테고리의 다른 글
웹 시큐어 코딩 : 인증 및 인가 (0) | 2022.03.05 |
---|---|
웹 시큐어 코딩 : 파일 업로드 & 다운로드 (0) | 2022.02.24 |
웹 시큐어 코딩 : SQL Injection (0) | 2022.02.20 |
Oracle Cloud : XSS(Cross-Site Scripting) 실습 (2) | 2022.01.28 |
Oracle Cloud : Free Tier 등록 & 접속 (0) | 2022.01.27 |
댓글