✅ 본문에 script 태그 등이 있을 때, 공격을 받거나 보안에 취약해질 수 있다.
✅ sanitizzeHtml은 본문의 태그를 필터링해준다.
1. 설치
npm i sanitize-html
2. 변환
// description 내용
<script>
alert("merong");
</script>
// 사용 시
let sanitizzeHtml = require("sanitize-html");
let sDesc = sanitizzeHtml(description);
❓ 변환하지 않으면?
내용에 적힌 코드(script - alert)가 작동 된다.
변환 시 아무 alert 없이 정상적으로 화면이 보여진다.
❓ 일부 태그만 허용하고 싶다면?
let sDesc = sanitizzeHtml(description, {
allowedTags: ["h1"],
});
❗ 결과
h1 태그는 정상적으로 적용되지만, alert는 실행되지 않는다.
// TEST 내용
<h1>여기는 제목입니다.</h1>
<script>
alert("메롱메롱");
</script>
'LAMP > JavaScript' 카테고리의 다른 글
[JS] Callstack, Event Loop (0) | 2024.08.09 |
---|---|
[JS] Promise & async/await 팁 (0) | 2024.08.05 |
[Node.js] 기본 설정 (0) | 2024.04.15 |
[Node.js] Mysql 연동 (0) | 2024.04.05 |
[Node.js] Node.js 환경변수 설정 (0) | 2024.04.03 |