FL-006 Falco DB Client Access
공격 행위 요약
FL-006은 공격자가 확보한 RDS 접속정보를 이용해 컨테이너 내부에서 MySQL 클라이언트를 실행한 행위를 설명하는 Falco 런타임 로그이다.
공격자는 mysql 명령으로 내부 RDS 엔드포인트에 접속한 뒤, 데이터베이스 이름, 테이블 목록, 컬럼 구조, 고객 주문 데이터를 조회했다.
Falco에서 cmd, parent_cmd, pod, ns, container_id가 함께 확인되므로, 해당 DB 접근 행위가 kube-system 네임스페이스의 pwned-pod-final 컨테이너 실행 환경에서 발생했음을 판단할 수 있다.
로그 발생 위치
| 구분 | 위치 | 설명 |
| K8s Node | Falco | DB 클라이언트 실행 이벤트 탐지 |
| journald | falco-modern-bpf.service | Falco 탐지 로그 저장 |
| Wazuh | Wazuh Dashboard | 수집된 Falco alert 확인 |
수집 방식
| 구분 | 방식 |
| Falco 탐지 기준 | mysql 등 DB 클라이언트 실행 여부 확인 |
| Falco 탐지 메시지 | 조건 매칭 시 [FL-006] DB Client Access 로그 생성 |
| Linux syscall | execve, execveat 이벤트가 Falco에 전달 |
| journald | Falco 이벤트가 falco-modern-bpf.service 로그에 저장 |
| Wazuh agent | K8s node에서 journald 로그 수집 |
| Wazuh manager | 수집된 Falco 로그를 FL-006 룰과 매칭 |
| Wazuh Dashboard | [FL-006] DB Client Access 이벤트로 표시 |
로그 출력 명령어
sudo journalctl -u falco-modern-bpf.service --no-pager | grep -E "\[FL-006\] DB Client Access"
실제 관측 로그
May 27 09:00:15 ip-10-0-133-48 falco[531]:
09:00:15.973656860: Warning [FL-006] DB Client Access
technique=T1213.006
cmd="mysql --connect-timeout=5 -h nodefall-rds.crg48gwoi6ii.ap-northeast-2.rds.amazonaws.com -P 3306 -u admin -pzeromini nodefall -e SELECT DATABASE();"
parent_cmd="bash -i"
user=root
pod=pwned-pod-final
ns=kube-system
container_id=d501b505262b
container_name=pwned
container_image_repository=docker.io/library/node
container_image_tag=20
k8s_pod_name=pwned-pod-final
k8s_ns_name=kube-system
May 27 09:00:16 ip-10-0-133-48 falco[531]:
09:00:16.239176437: Warning [FL-006] DB Client Access
technique=T1213.006
cmd="mysql --connect-timeout=5 -h nodefall-rds.crg48gwoi6ii.ap-northeast-2.rds.amazonaws.com -P 3306 -u admin -pzeromini nodefall -e SHOW TABLES;"
parent_cmd="bash -i"
user=root
pod=pwned-pod-final
ns=kube-system
container_id=d501b505262b
container_name=pwned
container_image_repository=docker.io/library/node
container_image_tag=20
k8s_pod_name=pwned-pod-final
k8s_ns_name=kube-system
May 27 09:00:16 ip-10-0-133-48 falco[531]:
09:00:16.297642927: Warning [FL-006] DB Client Access
technique=T1213.006
cmd="mysql --connect-timeout=5 -h nodefall-rds.crg48gwoi6ii.ap-northeast-2.rds.amazonaws.com -P 3306 -u admin -pzeromini nodefall -e DESCRIBE customer_orders;"
parent_cmd="bash -i"
user=root
pod=pwned-pod-final
ns=kube-system
container_id=d501b505262b
container_name=pwned
container_image_repository=docker.io/library/node
container_image_tag=20
k8s_pod_name=pwned-pod-final
k8s_ns_name=kube-system
May 27 09:00:17 ip-10-0-133-48 falco[531]:
09:00:17.483461986: Warning [FL-006] DB Client Access
technique=T1213.006
cmd="mysql --connect-timeout=5 -h nodefall-rds.crg48gwoi6ii.ap-northeast-2.rds.amazonaws.com -P 3306 -u admin -pzeromini nodefall -e SELECT id, customer_name, email, plan, amount, created_at FROM customer_orders;"
parent_cmd="bash -i"
user=root
pod=pwned-pod-final
ns=kube-system
container_id=d501b505262b
container_name=pwned
container_image_repository=docker.io/library/node
container_image_tag=20
k8s_pod_name=pwned-pod-final
k8s_ns_name=kube-system
주요 필드
| 필드 | 의미 | 예시 |
cmd | 실행된 MySQL 접속/조회 명령 | mysql ... -e SHOW TABLES; |
pod | 명령이 실행된 Pod | pwned-pod-final |
ns | Pod 네임스페이스 | kube-system |
container_id | 명령이 실행된 컨테이너 ID | d501b505262b |
커버 대상 Techniques Used
| Primary Log | Technique | Mapping Reason |
| AL-002 | T1213.006 Data from Information Repositories: Databases | AWS API로 Secret 및 RDS 메타데이터를 조회한 행위를 설명한다. |
| FL-006 | T1213.006 Data from Information Repositories: Databases | 확보한 접속정보로 MySQL을 실행해 RDS에 접근한 행위를 설명한다. |
탐지 포인트
| Technique | 관찰 행위 | 주요 필드 |
| T1213.006 Data from Information Repositories: Databases | 컨테이너 내부에서 mysql 클라이언트가 실행되었는지 확인한다. | cmd |
| T1213.006 Data from Information Repositories: Databases | RDS 엔드포인트로 접속했는지 확인한다. | cmd |
| T1213.006 Data from Information Repositories: Databases | DB 이름, 테이블, 컬럼, 데이터 조회 명령이 실행되었는지 확인한다. | cmd |
| T1213.006 Data from Information Repositories: Databases | 해당 명령이 pwned-pod-final 컨테이너에서 실행되었는지 확인한다. | pod, ns, container_id |
| T1213.006 Data from Information Repositories: Databases | AL-002의 Secret/RDS 조회 이후 실제 DB 접속이 이어졌는지 확인한다. | cmd, pod |