반응형
query () 가 일부 위험한 문자를 자동으로 이스케이프하지만 여전히 mysql.escape () 및 mysql.escapeId () 를 호출해야하는 것 같습니다. 다른 위험한 캐릭터를 탈출합니다.
이 올바른지? 그렇다면 query () 메서드에 의해 자동으로 보호되는 SQL 주입 공격의 종류와 mysql.escape () 를 호출하여 보호되는 SQL 주입 공격의 종류 mysql.escapeId () ?
해결 방법
아니요, query () 는 안전하지 않은 문자를 자동으로 이스케이프하지 않습니다.
값을 안전하게 이스케이프하려면 mysql.escape () / mysql.escapeId () 를 사용하거나 여기에 설명 된대로 ? 자리 표시자를 사용해야합니다.
connection.query('SELECT * FROM users WHERE id = ?', [userId], function(err, results) {
// ...
});
참조 페이지 https://stackoverflow.com/questions/25128055
반응형
'MySql' 카테고리의 다른 글
| MySQL에서 유효하지 않은 오류 처리기를 선언 하시겠습니까? (0) | 2020.12.03 |
|---|---|
| MySQL SQL 덤프는 무엇입니까? (0) | 2020.12.03 |
| MySQL에서 빈 문자열 삽입을 방지하기위한 제약 (0) | 2020.12.03 |
| MySQL Windows XP에서 MySQL 명령 줄 클라이언트를 통해 열린 MySQL 화면을 지우는 방법 (0) | 2020.12.02 |
| MySQL PostgreSQL에 비해 Mysql에 진공이 필요하지 않은 이유는 무엇입니까? (0) | 2020.12.02 |
댓글