강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

nhs20golstaff5838 のプロフィール画像
nhs20golstaff5838

投稿した質問数

模擬ハッキングの実務家が知らせる、SQLインジェクション攻撃技術とセキュアコーディング:PART 1

詳細対応方案(2)

? 플레이스 홀더 문자

作成

·

341

·

編集済み

0

매게변수를 지정한 구문은 인젝션 할 방법이 없는건가요?

 요즘은 대부분 매게변수를 받아서 쿼리문을 만드는데

이런 식으로 말이죠

공격이 불가능하다면 모든 입력받는 매게변수를 받으면 sql인젝션 공격 방법이 무의미한 것 아닌가요?

모의해킹인젝션

回答 1

0

crehacktive님의 프로필 이미지
crehacktive
インストラクター

안녕하세요.

Prepared Statement는 SQL 인젝션의 대응방법입니다. 이 방법은 아직 우회 기법은 없습니다.(물론 취약하게 코딩할 경우 제외) 만약 이 방법이 우회가 된다면 전 세계적으로 큰 이슈가 되겠죠.ㅎ

말씀하신대로, 해당 웹 서비스에서 모든 입력 값에 대해 Prepared Statement 처리를 하면 안전합니다.

그러나 Prepared Statement가 적용될 수 없는 경우도 있습니다.(이부분은 강의에서 설명을 드렸습니다.)

모든 웹 서비스의 모든 입력 값에서 Prepared Statement로 처리가 되면 모든 웹 서비스는 SQL 인젝션에 안전하기 때문에 SQL 인젝션이란 기술은 의미가 없게 됩니다.

그러나 그렇게 될 수는 없습니다. SQL 인젝션은 웹 서비스의 범주에서만 가능한 공격이 아니며 데이터베이스와 연동 되어 있는 모든 어플리케이션에서도 가능합니다. 또한 웹 서비스를 개발하는 개발자들이 경우에 따라선 Prepared Statement를 사용하지 않는 경우들도 있습니다.

nhs20golstaff5838 のプロフィール画像
nhs20golstaff5838

投稿した質問数

質問する