Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 백준
- 클라우드
- 정보보안
- 웹모의해킹
- 파이썬 문법
- XSS 취약점
- 컴퓨터 구조
- 마이데이터
- 데이터분석
- 개인정보보호
- 코딩테스트
- AI
- vagrant
- AWS
- 자료형
- 파이썬
- 개인정보보호법
- docker
- 도커
- 머신러닝
- 데이터 분석
- 데이터3법
- 웹 모의해킹
- 회귀분석
- 코딩테스트 연습
- 코테
- 프로그래머스
- 알고리즘
- 함수
- 시저암호
Archives
- Today
- Total
찬란하게
[웹해킹] SQL Injection 본문
DB 종류
TIP)
방화벽 룰에 따라 어느 정도를 막는건지, 인젝션이 안먹힌다는 건 소스가 안전한건지 별도의 웹방화벽이 있다는 황은 몰라서, 확실하게는 답하기 제한되지만...
혹시나 참고가 된다면...
해당 DB서버의 열린 포트를 확인해서...
mssql은 1433번 port가 열려있고,
mysql은 3306번 port가 열려있고,
oracle은 1521번 port가 열려있습니다.
그것도 확인이 안되면, 대략 추정을 할 수도 있구요...
1. asp, php를 쓰거나 웹서버가 windows에 IIS면 mssql일 것이다.
2. jsp를 쓰고, 웹서버가 windows거나 DB가 소규모이면 mysql일 것이다.
3. jsp를 쓰고, 웹서버가 unix거나 DB가 대규모이면 oracle일 것이다.
4. 국산 애호가이면, tibero일 것이다.
그것도 안되면, 홈페이지 스시템 관리자에게 전화를 걸어서, "계속 홈페이지 접속을 하면, db에러 라고 뜨는데... 무슨 db를 쓰나요?"라고 물어본다.
- 해대 18기 유영일님 의 답변 -
Numeric Injection | SQL Injection 취약점이 존재하는 입력의 형태가 정수일 때의 Injection 정수의 타입으로 입력하기 때문에 String과 달리 ' 작은 따옴표가 없다. 띄어쓰기를 할 수 있어야 추가적인 명령을 할 수 있다. (만약 코드 상에 trim()이나 공백을 지워주는 함수가 있다면 불가능 |
select * from news where no=1 union select * from news * |
String Injection | 취약점이 존재하는 입력의 형태가 문자일 때의 Injection 우리가 입력하는 것이 작은따옴표 ' 안으로 들어가기 때문에 Numeric Injection처럼 바로 명령을 이어붙이지는 못함 |
주로 쓰는 DB | |
ASP | MS SQL |
JSP | 웹서버가 windows거나 DB가 소규모이면 mysql 웹서버가 unix거나 DB가 대규모이면 oracle |
PHP | My SQL |
DB | 버전 확인 | 주석 |
MS SQL | SELECT @@version | -- |
My SQL | SELECT @@version | # --(space) |
oracle | SELECT * FROM v$version | -- |
Postgre SQL | SELECT version() | -- |
' UNION SELECT @@version--
'정보보안 > 웹 해킹' 카테고리의 다른 글
[웹해킹] 웹 취약점 점검 기준 (0) | 2021.05.31 |
---|---|
[웹해킹][용어] SQL 인젝션 (0) | 2021.05.09 |
[웹해킹][용어] 파일 업로드 취약점 (0) | 2021.05.09 |
[웹해킹] XSS 총정리 #2_ (0) | 2021.05.09 |
[웹해킹] XSS 총정리 #1_공격 종류, 시나리오 (0) | 2021.05.09 |