SlideShare a Scribd company logo
1 of 11
SQL Injection 구현 및 방어 
th!nkh@ck-hi 
café.thinkhack.org 
October 3, 2014
SQL Injection 정의 및 구현 
SQL Injection 이란? 
-웹 서비스는 효율적인 서비스제공을 위해서 웹 서버 어플리케이션과 데이터베 
이스가 연동되어있다. 
이때 데이터베이스 질의어(SQL Query)를 이용하여 입력된 데이터에 대한 검증 
을 받게 된다. 
이때 사용자가 악의적인 입력 값을 적용하여 정상적인 SQL문이 오작동하게 하 
는 공격기법이다.
SQL Injection 구현 
구현에 필요한 웹 컨테이너 및 언어, DB 
-Tomcat 
- JSP 
- Mysql
SQL Injection 구현
SQL Injection 구현
SQL Injection 구현 
SELECT * FROM injection where id=‘x’ && password=‘y’; 
SELECT * FROM injection where id=‘injection’ or ‘1’=‘1’--
SQL Injection 구현 
SELECT * FROM injection where id=‘x’ && password=‘y’; 
SELECT * FROM injection where id=‘test’--
SQL Injection 구현 소스
SQL Injection 방어 
- 문자열 필터링 
1. indexOf()
SQL Injection 방어 
- 문자열 필터링 (대문자) 
1. replace()
SQL Injection 방어 
- 문자열 필터링 (대문자) 
1. PreparedStatement

More Related Content

Viewers also liked

모의해킹 전문가 되기
모의해킹 전문가 되기모의해킹 전문가 되기
모의해킹 전문가 되기Jeremy Bae
 
Google Power Searching - 구글 검색 120% 활용하기
Google Power Searching - 구글 검색 120% 활용하기Google Power Searching - 구글 검색 120% 활용하기
Google Power Searching - 구글 검색 120% 활용하기i4uworks
 
무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전James (SeokHun) Hwang
 
초보자를 위한 시스템 해킹 공부 가이드라인
초보자를 위한 시스템 해킹 공부 가이드라인초보자를 위한 시스템 해킹 공부 가이드라인
초보자를 위한 시스템 해킹 공부 가이드라인H4C
 
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요NAVER D2
 
Springcamp 2015 - xss는 네가 맡아라
Springcamp 2015 - xss는 네가 맡아라Springcamp 2015 - xss는 네가 맡아라
Springcamp 2015 - xss는 네가 맡아라Hyeong-Kyu Lee
 
KAP 업종별기술세미나 11년 10월 #02
KAP 업종별기술세미나 11년 10월 #02KAP 업종별기술세미나 11년 10월 #02
KAP 업종별기술세미나 11년 10월 #02chasarang
 
ET 2004 seminar presentation front loading
ET 2004 seminar presentation front loadingET 2004 seminar presentation front loading
ET 2004 seminar presentation front loadingJosep Barceló Ungé
 
Lg주차등 제품견적 091030
Lg주차등 제품견적 091030Lg주차등 제품견적 091030
Lg주차등 제품견적 091030Yeonmoon Jeong
 
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료D.CAMP
 
소프트웨어 개발 프로세스 개선
소프트웨어 개발 프로세스 개선소프트웨어 개발 프로세스 개선
소프트웨어 개발 프로세스 개선Jung Dohyun
 
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원YOO SE KYUN
 
마케팅 리베로 면접 Pt
마케팅 리베로 면접 Pt마케팅 리베로 면접 Pt
마케팅 리베로 면접 Ptguest77925c
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안Youngjun Chang
 
KAP 업종별기술세미나 12년 11월 #3
KAP 업종별기술세미나 12년 11월 #3KAP 업종별기술세미나 12년 11월 #3
KAP 업종별기술세미나 12년 11월 #3chasarang
 
악성코드와 분석 방법
악성코드와 분석 방법악성코드와 분석 방법
악성코드와 분석 방법Youngjun Chang
 
악성코드 분석 도구
악성코드 분석 도구악성코드 분석 도구
악성코드 분석 도구Youngjun Chang
 
KAP 업종별기술세미나 13년 11월 #02
KAP 업종별기술세미나 13년 11월 #02 KAP 업종별기술세미나 13년 11월 #02
KAP 업종별기술세미나 13년 11월 #02 topshock
 

Viewers also liked (20)

모의해킹 전문가 되기
모의해킹 전문가 되기모의해킹 전문가 되기
모의해킹 전문가 되기
 
Google Power Searching - 구글 검색 120% 활용하기
Google Power Searching - 구글 검색 120% 활용하기Google Power Searching - 구글 검색 120% 활용하기
Google Power Searching - 구글 검색 120% 활용하기
 
무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전무료강의 보안전문가의 길(2015년) v0.9_공개버전
무료강의 보안전문가의 길(2015년) v0.9_공개버전
 
초보자를 위한 시스템 해킹 공부 가이드라인
초보자를 위한 시스템 해킹 공부 가이드라인초보자를 위한 시스템 해킹 공부 가이드라인
초보자를 위한 시스템 해킹 공부 가이드라인
 
Web hacking 개요
Web hacking 개요Web hacking 개요
Web hacking 개요
 
Spring
SpringSpring
Spring
 
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
제12회 IT4U 강연회 - 악성코드 분석 잘하고 싶어요
 
Springcamp 2015 - xss는 네가 맡아라
Springcamp 2015 - xss는 네가 맡아라Springcamp 2015 - xss는 네가 맡아라
Springcamp 2015 - xss는 네가 맡아라
 
KAP 업종별기술세미나 11년 10월 #02
KAP 업종별기술세미나 11년 10월 #02KAP 업종별기술세미나 11년 10월 #02
KAP 업종별기술세미나 11년 10월 #02
 
ET 2004 seminar presentation front loading
ET 2004 seminar presentation front loadingET 2004 seminar presentation front loading
ET 2004 seminar presentation front loading
 
Lg주차등 제품견적 091030
Lg주차등 제품견적 091030Lg주차등 제품견적 091030
Lg주차등 제품견적 091030
 
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료
2015년 7월의 D.PARTY_리싸이클파크 한재호 이사 발표자료
 
소프트웨어 개발 프로세스 개선
소프트웨어 개발 프로세스 개선소프트웨어 개발 프로세스 개선
소프트웨어 개발 프로세스 개선
 
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원
201209_월간 콘텐츠 시장동향_한국콘텐츠진흥원
 
마케팅 리베로 면접 Pt
마케팅 리베로 면접 Pt마케팅 리베로 면접 Pt
마케팅 리베로 면접 Pt
 
2.악성코드와 분석 방안
2.악성코드와 분석 방안2.악성코드와 분석 방안
2.악성코드와 분석 방안
 
KAP 업종별기술세미나 12년 11월 #3
KAP 업종별기술세미나 12년 11월 #3KAP 업종별기술세미나 12년 11월 #3
KAP 업종별기술세미나 12년 11월 #3
 
악성코드와 분석 방법
악성코드와 분석 방법악성코드와 분석 방법
악성코드와 분석 방법
 
악성코드 분석 도구
악성코드 분석 도구악성코드 분석 도구
악성코드 분석 도구
 
KAP 업종별기술세미나 13년 11월 #02
KAP 업종별기술세미나 13년 11월 #02 KAP 업종별기술세미나 13년 11월 #02
KAP 업종별기술세미나 13년 11월 #02
 

Sql injection 정의 및 구현

  • 1. SQL Injection 구현 및 방어 th!nkh@ck-hi café.thinkhack.org October 3, 2014
  • 2. SQL Injection 정의 및 구현 SQL Injection 이란? -웹 서비스는 효율적인 서비스제공을 위해서 웹 서버 어플리케이션과 데이터베 이스가 연동되어있다. 이때 데이터베이스 질의어(SQL Query)를 이용하여 입력된 데이터에 대한 검증 을 받게 된다. 이때 사용자가 악의적인 입력 값을 적용하여 정상적인 SQL문이 오작동하게 하 는 공격기법이다.
  • 3. SQL Injection 구현 구현에 필요한 웹 컨테이너 및 언어, DB -Tomcat - JSP - Mysql
  • 6. SQL Injection 구현 SELECT * FROM injection where id=‘x’ && password=‘y’; SELECT * FROM injection where id=‘injection’ or ‘1’=‘1’--
  • 7. SQL Injection 구현 SELECT * FROM injection where id=‘x’ && password=‘y’; SELECT * FROM injection where id=‘test’--
  • 9. SQL Injection 방어 - 문자열 필터링 1. indexOf()
  • 10. SQL Injection 방어 - 문자열 필터링 (대문자) 1. replace()
  • 11. SQL Injection 방어 - 문자열 필터링 (대문자) 1. PreparedStatement