← 최신 논문
💻 computer science

Prediction of SQL injection using Machine Learning

이 논문은 공격자가 데이터베이스 쿼리를 조작하고 서버 보안을 침해할 수 있게 하는 SQL 인젝션 공격을 효과적으로 탐지하고 예측하기 위해 다양한 머신러닝 기법을 평가하는 데 초점을 맞춥니다.

원저자: Radhika Sreedharan, Sampath A K

게시일 2026-07-28
📖 4 분 읽기☕ 가벼운 읽기

원저자: Radhika Sreedharan, Sampath A K

원본 논문은 CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

디지털 문지기와 가짜 신분증의 기술

인터넷을 거대한, 북적이는 도시라고 상상해 보세요. 그곳의 모든 웹사이트는 안내 데스크가 있는 건물입니다. 그 데스크 뒤에는 당신이 좋아하는 고양이 영상부터 은행 계좌 번호까지 모든 것을 담고 있는 거대하고 조직적인 도서관인 데이터베이스가 자리 잡고 있습니다. 사서에게 책을 요청하려면 SQL(Structured Query Language)이라는 특별한 언어를 사용합니다. 이것은 "이름이 'Alice'인 모든 기록을 보여줘"라고 말하는 정중하고 표준화된 방식과 같습니다.

하지만 만약 안내 데스크에 있는 사람이 정중한 손님이 아니라 변장의 명수라면 어떻게 될까요? 이것이 바로 **SQL 인젝션(SQL injection)**의 세계입니다. 이는 공격자가 단순히 책을 요청하는 것이 아니라, 요청 속에 가짜 쪽지를 몰래 끼워 넣어 사서를 속이는 교묘한 수법입니다. "아, 사실은 이 건물에 있는 모든 책을 다 보여줘"라거나, 심지어 "카탈로그를 새로 작성하게 해줘"라고 생각하게 만드는 것이죠. 건물의 보안이 취약하다면, 이 수법을 통해 해커들은 비밀을 훔치거나, 기록을 삭제하거나, 아예 문을 잠가버릴 수 있습니다.

이러한 디지털 도둑들을 막기 위해 과학자들은 **머신러닝(Machine Learning)**과 **딥러닝(Deep Learning)**으로 눈을 돌리고 있습니다. 이것들을 마법 주문이 아니라, 매우 똑똑하고 지칠 줄 모르는 문지기라고 생각해 보세요. 이 문지기들은 알려진 악당들의 목록을 암기하는 대신, 수천 건의 과거 사건들을 학습합니다. 그들은 숙련된 문지기가 누군가 신분증을 쥐고 있는 방식만 보고도 가짜임을 알아채는 것처럼, '정상적인' 요청과 '교묘한' 요청 사이의 미묘한 패턴을 학습합니다. 큰 질문은 이것입니다. 우리가 이 디지털 문지기들에게 도서관을 안전하게 지킬 수 있을 만큼 빠르고 정확하게 가짜를 찾아내는 법을 가르칠 수 있을까요?


거대한 데이터베이스 강도 사건: 스마트 문지기들의 이야기

이 연구에서 프레시던시 대학교(Presidency University)의 라디카 스리다란(Radhika Sreedharan)과 샴파트 A K(Dr. Sampath A K) 박사는 여러 종류의 디지털 문지기들을 테스트해 보기로 했습니다. 그들의 목표는 단순하지만 매우 중요했습니다. 바로 SQL 인젝션 공격이 피해를 입히기 전에 이를 포착할 수 있는 최고의 머신러러닝 알고리즘을 찾는 것이었습니다. 그들은 수천 개의 데이터베이스 쿼리(일부는 정직하고 정상적인 요청인 0으로, 다른 것들은 악의적인 주입 공격인 1로 표시됨)를 사용하여 이 문제를 "가짜 찾기" 게임처럼 다루었습니다.

연구진은 단 한 명의 문지기만 뽑은 것이 아니라, 서로 다른 스타일을 가진 전체 팀을 불러 모았습니다. 특정 규칙과 패턴을 찾는 서포트 벡터 머신(SVM), 의사 결정 나무(Decision Trees), 랜덤 포레스트(Random Forests) 같은 고전적인 탐정들이 있었습니다. 또한 문장의 의미를 이해하기 위해 글자 수를 세는 대신 문장의 흐름과 순서를 읽는 것과 같이, 문맥을 이해하려고 노력하는 LSTM(딥러닝 모델의 일종) 같은 깊은 사고가들도 있었습니다. 그들은 또한 유사한 것들을 그룹화하여 이상한 것을 찾아내는 **로지스틱 회귀(Logistic Regression)**와 **응집형 클러스터링(Agglomerative Clustering)**도 시도했습니다.

하지만 이 이야기에는 반전이 있습니다. 이 문지기들을 훈련시키는 과정은 마치 개에게 물건을 가져오도록 가르치는 것과 비슷했습니다. 연구진은 만약 문지기에게 "착한" 개(정상 쿼리)만 보여주거나 혹은 "나쁜" 개(공격)만 보여준다면, 문지기가 혼란에 빠진다는 것을 발견했습니다. 만약 문지기가 정상적인 쿼리만 본다면, 해커가 걸어 들어올 때조차 모든 것이 안전하다고 가정할 것입니다. 만약 공격만 본다면, 모든 방문객을 범죄자로 생각하기 시작할 것입니다. 논문은 이러한 모델들이 고립된 상태에서는 잘 작동하지 않는다는 점을 명시적으로 밝히고 있습니다. 즉, 차이점을 배우기 위해서는 반드시 좋고 나쁜 사례가 섞인 데이터로 훈련되어야 합니다.

훈련이 진행됨에 따라 결과가 빛을 발하기 시작했습니다. 딥러닝 전문가인 LSTM 모델은 믿을 수 없을 정도로 예리함을 증명했습니다. 하지만 이 모델은 정상 쿼리와 악성 쿼리가 섞인 데이터를 입력받아 몇 차나의 훈련을 거친 후에야 1(또는 100%)의 정확도에 도달했습니다. 만약 한 가지 유형으로만 훈련되었다면 다른 유형을 오해했을 것입니다. 마찬가지로 **서포트 벡터 머신(SVM)**도 뛰어난 성능을 보였지만, 연구진이 두 가지 레이블 값(0과 1)을 모두 포함하는 항목을 더 많이 추가한 후에야 99% 이상의 정확도를 기록했습니다. 랜덤 포스트 모델도 뒤처지지 않고 **99%**의 정확도를 달anim했고, 의사 결정 나무로지스틱 회귀는 각각 **97.8%**와 **98.5%**를 기록했습니다. 사물을 그룹화하는 클러스터링 방식조차도 충분한 혼합 데이터를 갖추자 **97%**의 정확도에 도달했습니다.

그러나 논문은 몇 가지 문제점도 강조합니다. 모델들이 한 가지 유형의 데이터(모두 좋거나 모두 나쁜 경우)로 테스트되었을 때, 그들은 크게 어려움을 겪었습니다. 예를 들어, 응집형 클러스터링 모델은 완전히 실패한 것은 아니었지만 낮은 정확도를 기록했습니다. 공격 데이터로만 훈련되었을 때는 **25%**의 정확도만을 보였고, 정상 쿼리로만 훈련되었을 때는 **50%**를 기록했습니다. 이 모델은 혼돈 속에서 의미를 파악하기 위해 전체적인 그림이 필요했습니다. 마찬가지로, 의사 결정 나무랜덤 포스트 모델은 훈련 중에 공격 사례를 충분히 보지 못하면 공격을 정상 쿼리로 오해했습니다.

연구진은 단순히 숫자에만 머물지 않고, 모델이 왜 작동하는지를 살펴보았습니다. 그들은 실제 공격이 아닌 이상한 구두점 오류 등을 제거하는 데이터 정제 작업이 필수적인 첫 단계라는 것을 발견했습니다. 또한 일부 모델인 LSTM은 빠르게 완벽한 점수에 도달할 수 있는 반면, 다른 모델들은 그곳에 도달하기 위해 더 많은 양의 데이터가 필요하다는 점도 주목했습니다. 이 연구는 단 하나의 모델이 모든 상황에 적용되는 "만능 해결책"은 아닐지라도, 다양하고 균형 잡힌 데이터로 훈련된 이러한 도구들의 조합이 매우 강력한 방어 체계를 구축한다는 것을 시사합니다.

결국, 논문은 SVMLSTM이 이러한 디지털 도둑들을 잡는 데 있어 최고의 경쟁자이며, 그 뒤를 랜덤 포스트가 바짝 쫓고 있다고 결론짓습니다. 저자들은 이러한 모델들이 매우 효과적이지만, 아직 작업이 끝나지 않았다고 제안합니다. 그들은 더 다양한 유형의 공격을 깊이 있게 파고들어 모델을 더욱 정교하게 다듬을 계획입니다. 현재로서는 결론이 명확합니다. 보안이 철저한 디지털 도서관을 만들려면, 착한 사람과 나쁜 사람을 모두 본 경험이 있고 그들을 구별할 수 있는 올바른 도구를 갖춘 문지기가 필요합니다. 디지털 데이터베이스 보안의 미래는, 문 앞을 지키며 끊임없이 학습하는 이 똑똑한 알고리즘들에 달려 있는 듯합니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →