본문 바로가기
MySql

MySQL Node-MySQL-Query () 메서드에서 이스케이프 vs Mysql.Escape () / Mysql.EscapeId ()

by 베이스 공부 2020. 12. 3.
반응형


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

 

 

반응형

댓글