개발 현장에서 보안 업무에 관여하게 된 이후로, 저는 줄곧 SQL 인젝션이 가장 큰 위협이라고 생각해왔습니다. 학교에서도 회사에서도 "SQL 인젝션은 반드시 막아야 한다!"고 귀가 따갑도록 들어왔거든요.
그런데 2025년 취약점 랭킹을 보고 경악했습니다. SQL 인젝션이 1위가 아니었던 거예요.
실제 현장에서 발생하는 인시던트를 조사해보니, 확실히 XSS나 약한 패스워드, 무인가 접근에 의한 피해가 압도적으로 많더군요. 이게 도대체 왜 그런 걸까요?
클라우드 마이그레이션 프로젝트에 참여했을 때의 일입니다. 기존 온프레미스 환경에서는 상상할 수 없었던 새로운 공격 패턴에 직면했습니다.
원격근무의 확산으로 공격자들도 수법을 바꾸고 있습니다. 이제는 단순한 SQL 인젝션보다 사용자의 행동을 악용한 공격이 더 효과적이에요.
저희 팀에서는 Apidog를 사용해서 보안 테스트를 자동화하고 있습니다.
실제 운영 플로우:

설명: 노란색 노드가 Apidog 통합 포인트
- 개발 단계에서 자동 테스트
- CI/CD 통합 테스트에서 지속적 검증
Apidog의 위력을 실감한 순간: 수동으로는 찾을 수 없었던 권한 설정 실수를 ID 전환 테스트로 한 번에 검출. 개발 초기에 수정할 수 있어서 릴리스 후 큰 트러블을 피할 수 있었습니다.
Apidog에 대해
Apidog는 API 설계·테스트·문서 관리·목 환경 구축·취약점 검지를 통합한 개발자용 플랫폼입니다.
- API 테스트 자동화: 단위 테스트·통합 테스트·CI/CD 통합 지원
- 보안 검지: XSS, CSRF, 약한 패스워드, SQL 인젝션 등을 자동 검출
- 개발 효율화와 AI 지원: 문서 생성이나 목 서버 외에도 AI를 활용하여 다음을 지원
- 데이터 모델의 보조 수정(설명문이나 Mock 추가)
- API 문서의 규약 체크
- API 필드 명명 보조
- 테스트 케이스 생성·API 사례 자동 생성
기사 내에서는 CI/CD 파이프라인이나 자동 API 테스트에서의 활용 사례로 소개하고 있습니다.
왜 1위인가: 공격이 쉽고 피해가 심각
실제 경험한 사례: EC 사이트의 리뷰 기능에 악의적인 스크립트가 삽입되어 사용자의 세션 정보가 대량 유출.
현실적인 대책:
실제로 있었던 일: 직원이 업무 중 악의적인 사이트를 클릭. 모르는 사이에 관리 화면에서 중요 데이터가 삭제되어 있었습니다.
대책 포인트:
현장 흔한 일: "admin/123456", "root/password"... 아직도 현역입니다.
Apidog에서의 검증 방법: 권한 전환 기능을 사용해서 약한 패스워드나 설정 실수를 자동 검출할 수 있습니다.
HTTP 통신의 위험성: 평문으로 API가 통신하면 중간자 공격으로 정보가 다 보입니다.
Apidog 활용법: HTTPS 설정의 일괄 검증으로 암호화 누락을 사전에 캐치.
흔한 실패 사례: 일반 사용자가 관리자용 API에 접근할 수 있는 설정 실수.
대책의 기본:
Apidog에서의 대책: API 문서의 공개 범위를 적절히 제어하고 테스트 환경의 오공개를 방지.
왜 순위가 내려갔는가:
하지만 아직 방심은 금물입니다.
대책 요점:
현실 문제: 알고 있는데 방치되고 있는 취약점이 의외로 많습니다.
실제 현장에서 리스크 평가를 할 때 저희는 이런 식으로 정리합니다:
| 취약점 | 영향도 | 발생빈도 |
|---|---|---|
| XSS(크로스사이트 스크립팅) | ★★★★★ | ★★★★★ |
| CSRF(크로스사이트 요청 위조) | ★★★★☆ | ★★★★☆ |
| 약한 패스워드·기본 설정 | ★★★★☆ | ★★★★★ |
| 미암호화 통신 | ★★★★☆ | ★★★★☆ |
| 접근 제어 불비 | ★★★★★ | ★★★☆☆ |
| 파일 업로드 | ★★★★☆ | ★★★☆☆ |
| 무인가 접근 | ★★★★☆ | ★★★★☆ |
| SQL 인젝션 | ★★★★★ | ★★☆☆☆ |
| 커맨드 주입·코드 실행 | ★★★★★ | ★★☆☆☆ |
| 미수정 기지 취약점 | ★★★★★ | ★★★☆☆ |
표 보는 법:
- ★5개: 최고 레벨(즉시 대응 필요)
- ★4개: 고레벨(우선적으로 대응)
- ★3개: 중레벨(계획적으로 대응)
- ★2개: 저레벨(정기적으로 체크)
이 표를 보면 SQL 인젝션은 영향도는 최고 레벨이지만 발생빈도가 낮다는 것을 알 수 있습니다.
실제로 현장에서 느낀 변화를 정리하면:
개발자의 보안 리터러시가 확실히 올라가고 있습니다.
취약점은 모두 같지 않습니다. 영향도×발생빈도로 우선순위를 정합시다.
Apidog를 활용한 자동화:
솔직히 말하면 완벽한 보안은 존재하지 않습니다. 하지만 적절한 대책을 지속하는 것으로 리스크를 대폭 줄일 수는 있습니다.
특히 중요한 것은:
1. 조기 발견·조기 대응
2. 자동화에 의한 지속적 모니터링
3. 팀 전체의 보안 의식 향상
SQL 인젝션이 1위에서 밀려난 것은 결코 위협이 사라진 게 아닙니다. 공격의 다양화와 방어 기술의 진보, 이 양쪽을 이해하는 것이 2025년 보안 대책의 열쇠가 됩니다.
이 글이 참고가 되었다면 꼭 공유해주세요! 여러분 현장에서의 보안 대책이나 Apidog 활용 사례가 있다면 댓글로 알려주세요. 함께 더 안전한 개발 환경을 만들어가요!