
1. phpinfo에서 DB 정보 수집
$ curl http://$TARGET/info.php | grep -i "mysql\|pdo"
- curl 명령어를 통해 php의 환경 정보를 출력 후 mysql, pdo라는 단어만 출력하는 명령어
| • 확인 결과 - PHP 정상 동작, mysqli 활성화, PDO 활성화, MySQL 연동가능 |

2. 수동 SQLi 테스트 (URL 파라미터)
| 공격 명 | 설명 | 취약 여부 |
| Union-based SQL Injection | UNION SELECT를 이용해 다른 테이블의 데이터를 함께 조회 | |
| Error-based SQL Injection | DB 오류 메시지를 이용하여 정보를 획득 | |
| Boolean-based Blind SQL Injection | 참(True)/거짓(False)에 따른 응답 차이로 정보를 추출 | |
| Time-based Blind SQL Injection | 시간 지연 함수를 이용하여 참/거짓을 판단 | |
| 개발 정보 노출 | 개발 정보에 관해 노출이 되는 취약점 | O |
단계1. 정상 요청 확인

단계2. 페이로드 삽입 후 결과 확인
특수문자를 이용해 에러를 확인
• 200 상태코드
- 입력이 문자열로 처리되거나 적절하게 이스케이프처리가 되어 정상 실행 가능성 있음


• 500 상태코드
- 서버 내부 오류 발생, SQL 구문 오류, 애플리케이션 예외 등의 다양한 원인 발생가능성 있음

• # 400 상태코드
- 400 상태코드와 함께 아파치의 버전 정보, 포트 번호가 노출되어 개발 정보 노출 취약점도 존재한다고 판단

2-1. Union-based SQL Injection
1) 파라미터에 ' 를 입력하여 의도적인 오류를 냈을 경우 500 상태코드와 함께 서버에러를 나타내는 것을 확인 가능했으나 DB에 관한 정보는 확인 불가

2-3. Boolean-based Blind SQL Injection
각각의 SQL Injection 페이로드를 삽입해서 응답 확인했으나 차이없음
1) id=1 AND 1=1--"

2) id=1 AND 1=2--"

'Red, Blue, Target 환경을 통한 해킹 실습' 카테고리의 다른 글
| 공격 2 — FTP 익명 로그인 & WebShell 업로드 (0) | 2026.07.06 |
|---|---|
| 공격 1 — vsftpd 백도어 (CVE-2011-2523) (0) | 2026.07.06 |
| 정찰 단계 3 — SMB·SNMP·DNS 열거 (0) | 2026.07.03 |
| 정찰 단계 2 — 웹 애플리케이션 정보 수집 및 취약점 탐색 (0) | 2026.07.03 |
| 정찰 단계 1 — Nmap 고급 스캔 기법 (0) | 2026.07.02 |