blueh4g |
sql injection 을 막는 방법은 말씀하신대로가 맞습니당~ 사용자의 입력이 쿼리에 영향을 미치지 않게 하면 되는거죠..
근데 그렇게 하는게 어려워서 문제죠 = ㅅㅠ
사실, prepared statement 같이 각 데이터를 바인딩해서 쓰도록 하면 어느정도 방비는 되는데, 개발자가 귀찮아지죠.. (항상 필터링 하나 더 넣으면 될껄, 귀찮다고 안넣어서 생기는 취약점들;;)
그리고 아래 data 의 경우에도, 공격자가 입력을 </data><query><data> 라고 넣으면 여전히 공격이 될거 같구요..
사실, 위에서 말씀하신 <data> 와 같은 역할을 하는게 이미 <xmp> 태그라고 존재하긴 합니다 ;ㅁ;
더욱이, 네이버도 그렇고 많은 사이트들에서는 단순히 글만 입력하는게 아니라, 이미지 삽입 등 에디터를 지원하는 경우가 많은데, 이럴땐 태그를 못막는 상황에서 xss를 막아야 한다는 제한이 생기죠 ㅠㅠ |
2014/01/13 |
|