JL-002 Jenkins Docker and System Log
Log Structure
Docker JSON log는 컨테이너의 stdout/stderr를 JSON 형식으로 저장한다. Jenkins가 어떤 이벤트를 stdout으로 남기는지에 따라 확인 가능한 범위가 달라지므로, access log와 job/build log를 함께 보는 것이 좋다.
Important Fields
| Field | Meaning |
|---|---|
@timestamp | 로그 수집 또는 이벤트 시간 |
container.id | Jenkins 컨테이너 ID |
log.file.path | Docker JSON log 경로 |
stream | stdout 또는 stderr |
message | Jenkins 원본 로그 메시지 |
Mapped Techniques
| Technique | Mapping Reason |
|---|---|
| T1078 Valid Accounts | Jenkins 인증/세션/사용자 행위 단서 확인 |
| T1190 Exploit Public-Facing Application | 취약점 악용 전후 Jenkins 오류 또는 CLI 흔적 확인 |
| T1213 Data from Information Repositories | job, workspace, build 관련 접근 단서 확인 |
| T1552.004 Private Keys | credential 또는 배포 키 접근 정황을 다른 로그와 교차 확인 |
KQL Draft
sb01_server: "jenkins" and sb01_log_type: "jenkins_docker"
Investigation Pivot
Jenkins access log의 source IP, CLI jar 요청 시각, Docker/System 로그의 인증/오류 메시지, App SSH 접속 시각을 하나의 타임라인으로 묶는다.
