javascript나 nodejs 에서 따옴표와 같은 특수기호들은 해커들이 SQL 인젝션에서 자주 사용되군 합니다.
때문에 이러한 특수글짜들이 포함된 문자열을 디비에 넣거나 웹브라우저에서 현시할때에는 무의미성 기호로 처리하는것이 중요합니다. PHP에서는 htmlspecialchars(); mysql_real_escape_string() 등이 특수글자를 안전하게 처리하면서도 PDO을 사용해서 디비에 쿼리를 실행할때 파라미터로 바인딩하는 보안로직을 심어주어 해결합니다.
[code]
function escapeHTML (str) {
var val = '';
if(typeof str === 'undefined') val = '';
else {
if(typeof str === 'string'){
val = str.replace(/\0/g, '').trim();
} else {
val = str;
}
}
return (function() {
var entityMap = {
"&": "&",
"<": "<",
">": ">",
'"': '"',
"'": ''',
"\\": '\\\\'
};
return String(val).replace(/[&<>"'\\]/g, function (s) {
return entityMap[s];
});
//};
})();
};
[/code]
그누보드에서도 특수글자처리를 위한 제나름의 보안로직이 있습니다. 그저 사용자들이 잘 알고, 개발자들이 이 함수도 이용하면 감사할뿐입니다.
댓글 10개
게시글 목록
| 번호 | 제목 |
|---|---|
| 17043 | |
| 17042 |
JavaScript
for 문으로 유사패턴 태그 만들기
4
|
| 17025 |
JavaScript
with 블럭 사용하기
17
|
| 17015 | |
| 17001 |
JavaScript
event listeners 찾기
3
|
| 16998 | |
| 16994 | |
| 16988 | |
| 16985 |
JavaScript
자바스크립트 for length / for in / for of
6
|
| 16983 | |
| 16981 | |
| 16979 | |
| 16978 | |
| 16976 | |
| 16968 | |
| 16967 |
JavaScript
상위요소 찾기 노드
3
|
| 16957 | |
| 16956 | |
| 16955 | |
| 16951 | |
| 16950 | |
| 16949 | |
| 16932 |
기타
postman
4
|
| 16930 | |
| 16913 | |
| 16909 | |
| 16906 | |
| 16905 | |
| 16904 | |
| 16894 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기