SecuFiby TechFi
매우위험SW-IV-01CWE-89💉 SW-IV 입력데이터 검증 및 표현

SQL 삽입

SQL Injection

외부 입력값을 적절한 검증 없이 SQL 쿼리에 직접 사용하여 DB를 비정상적으로 조작할 수 있는 취약점

⚡ 발생 원인

사용자 입력을 문자열 연결로 SQL 쿼리 구성 시 발생

💥 보안 영향

DB 전체 열람·수정·삭제, 인증 우회, OS 명령 실행

취약한 코드 vs 안전한 코드

취약한 코드 (java)

// 취약한 코드 - 문자열 연결로 쿼리 구성
String query = "SELECT * FROM users WHERE id = '" + userId + "'";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(query);
// userId = "' OR '1'='1" 입력 시 전체 데이터 노출

안전한 코드 (java)

// 안전한 코드 - PreparedStatement 사용
String query = "SELECT * FROM users WHERE id = ?";
PreparedStatement pstmt = conn.prepareStatement(query);
pstmt.setString(1, userId);
ResultSet rs = pstmt.executeQuery();
🛡️

ISMS-P 인증기준 연계

2.10.1 보안 시스템 운영

🔬 AI 코드 진단

내 코드에 SQL 삽입 취약점이 있는지 바로 확인하세요

코드를 붙여넣으면 AI가 KISA 7대 보안약점 기준으로 SQL 삽입 등 취약점을 자동 분석합니다.

AI 코드 진단 실습 →

전문가 보안 점검

SQL 삽입 등 SW 보안약점을 전문가가 직접 점검해드립니다

ISMS-P 선임심사원이 직접 수행하는 수탁사 보안성 검토 서비스입니다.
KISA SW 개발보안 가이드 기준으로 코드·시스템 전체를 점검하고 ISMS-P 심사 증적을 제공합니다.

💉 SW-IV 관련 취약점 (입력데이터 검증 및 표현)