이렇게 쓰다가 새 양식 새로 줘서 그걸로 해야함

오늘 내가 한 일
- 공격 시나리오
- 1,2차 업무 간단하게 문서화
- n8n 환경구축 문서화
1. Dvwa
1) 실행 방법
① sudo systemctl restart apache2
② http://127.0.0.1/DVWA/
2) 비밀번호 바꾸는 방법
① sudo mysql -u root -p
② USE dvwa;
③ UPDATE users SET password = MD5('dvwa123') WHERE user = 'dvwa';
④ EXIT;
3) 서비스 확인
① sudo service apache2 start
② sudo service mysql start
4) dvwa db에 중요한 플래그 넣어놓는 방법
① 주의사항
i. DVWA 설정 페이지(setup.php)에서 "Create / Reset Database" 버튼을 누르면 직접 추가한 모든 테이블과 데이터가 삭제됨
ii. 해결방법 -> 1-5)
② 기존 users 테이블에 플래그 추가
i. 터미널에서 MySQL 접속
- sudo mysql -u root -p
ii. 데이터베이스 선택 및 데이터 삽입
- USE dvwa;
- INSERT INTO users (user_id, first_name, last_name, user, password, avatar, last_login, failed_login) VALUES (1337, 'FLAG', 'CAPTURED', 'flag_user', 'FLAG{sql_injection_master_kali}', NULL, NULL, 0);
③ 새로운 비밀 테이블 생성
i. 비밀 테이블 생성
CREATE TABLE secret_flags (
id INT PRIMARY KEY,
flag_name VARCHAR(50),
flag_value VARCHAR(100)
);
ii. 데이터 삽입
INSERT INTO secret_flags (id, flag_name, flag_value)
VALUES (1, 'database_admin_flag', 'FLAG{deep_db_exploration_success}');
④ 설정 파일(Config)에 숨기기
i. 위치
- /var/www/html/DVWA/config/config.inc.php
ii. 파일 맨 밑에 주석으로 플래그를 적어enrl
- // FLAG{config_file_read_success}
5) 초기화 해결 방법
① sudo nano /var/www/html/DVWA/dvwa/includes/DBMS/MySQL.php
② 테이블 생성(CREATE) 코드 추가

③ 플래그 데이터 삽입(INSERT) 코드 추가

2. MITRE ATT&CK 위치
1) Tactic
① Initial Access / Collection
2) Technique
① T1190 / T1567 (데이터 유출)
3) 관련 흐름
① Recon → SQLi (Flag 탈취) → Execution → Collection → Impact
3. 기본 정보
1) 공격 대상
① DVWA 서버
i. Medium Level
ii. Ip :
2) 공격 목표
① SQL Injection을 통해 DB 시스템 구조를 파악하고, 숨겨진 flags 테이블에서 중요 데이터(Flag)를 탈취한 후 흔적 제거 및 DoS 공격 수행
3) 취약점 원인
① 숫자형 파라미터에 대한 검증 부재 (SQL Injection)
① mysql_real_escape_string() 함수가 싱글 쿼터(')만 방어한다는 점을 악용
2. 공격 절차 (Flag 탈취 중심)

3. 해보기
1) 들어가기
① http://220.88.200.203:8081/DVWA
2) 환경 체크
① DVWA Security
i. Security 탭에서 Medium으로 설정

② Burp Suite
i. Kali에서 Burp Suite를 실행하고, 브라우저 설정 완료하기

3) DB 이름 및 컬럼 개수 파악
① 먼저 현재 사용 중인 데이터베이스 이름을 알아내야 함
② DVWA의 SQL Injection 메뉴로 이동
i. User ID 입력창에 1을 넣고 Submit 누르기

③ Burp Suite의 Proxy > Intercept 탭에서 잡힌 패킷을 Repeater로 보내기
i. id=1&Submit=Submit 부분을 아래처럼 수정해서 전송하기
- id=1 union select 1,database()&Submit=Submit

ii. 결과

- 현재 데이터베이스 이름이 dvwa인 것을 알 수 있다~
'시큐리티아카데미 7기 - sk쉴더스트랙 > 프로젝트' 카테고리의 다른 글
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 프로젝트 11일차 - 2026.04.27 (0) | 2026.04.28 |
|---|---|
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 프로젝트 10일차 - 2026.04.22 (0) | 2026.04.24 |
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 프로젝트 8일차 - 2026.04.20 (0) | 2026.04.20 |
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 프로젝트 7일차 - 2026.04.17 (0) | 2026.04.17 |
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 프로젝트 6일차 - 2026.04.16 (0) | 2026.04.16 |