악성 패키저 PHP 패키지
사이버 보안 분석가들은 Packagist에서 악성 PHP 패키지를 발견했는데, 이 패키지들은 합법적인 Laravel 헬퍼 라이브러리로 위장하면서 크로스 플랫폼 원격 액세스 트로이목마(RAT)를 은밀하게 배포합니다. 이 악성 프로그램은 Windows, macOS 및 Linux 환경에서 원활하게 작동하여 감염된 시스템에 상당한 위험을 초래합니다.
식별된 패키지는 다음과 같습니다.
- nhattuanbl/lara-helper (다운로드 37회)
- nhattuanbl/simple-queue (다운로드 29회)
- nhattuanbl/lara-swagger (다운로드 49회)
nhattuanbl/lara-swagger 패키지 자체는 악성 코드를 포함하지 않지만, Composer 종속성으로 nhattuanbl/lara-helper 패키지를 지정하여 내장된 RAT(원격 접속 트로이목마)가 설치됩니다. 이러한 패키지는 공개적으로 알려졌음에도 불구하고 저장소에서 여전히 접근 가능하므로, 영향을 받는 환경에서 즉시 제거해야 합니다.
목차
모호한 전술은 악의적인 의도를 숨긴다
상세한 코드 분석 결과, lara-helper와 simple-queue 모두 탐지를 회피하도록 설계된 src/helper.php라는 파일을 포함하고 있는 것으로 나타났습니다. 이 악성 프로그램은 제어 흐름 조작, 암호화된 도메인 이름 및 명령 문자열, 숨겨진 파일 경로, 무작위 변수 및 함수 식별자 등 고급 난독화 기법을 사용합니다.
이러한 기술은 정적 분석을 상당히 복잡하게 만들고 악성 페이로드가 기존 코드 검토 및 자동 보안 스캔 도구를 우회하도록 도와줍니다.
명령 및 제어 인프라를 통해 호스트를 완전히 장악할 수 있습니다.
RAT(원격 접근 트로이목마)는 실행되면 helper.leuleu.net의 2096번 포트에서 명령 및 제어(C2) 서버에 연결합니다. 시스템 정찰 데이터를 전송하고 추가 지시를 기다리며 지속적인 수신 대기 상태에 들어갑니다. 통신은 PHP의 stream_socket_client() 함수를 사용하여 TCP를 통해 이루어집니다.
백도어는 운영자가 내릴 수 있는 다양한 명령을 지원하여 시스템을 완벽하게 제어할 수 있도록 합니다. 주요 기능은 다음과 같습니다.
- 핑을 통해 60초마다 자동 심장 박동 신호를 보냅니다.
- 정보(info)를 통한 시스템 프로파일링 데이터 전송.
- 셸 명령 실행(cmd).
- PowerShell 명령 실행(powershell).
- 백그라운드 명령 실행(실행).
신뢰성을 극대화하기 위해 RAT는 PHP의 disable_functions 설정을 확인하고 popen, proc_open, exec, shell_exec, system 또는 passthru 중에서 사용 가능한 첫 번째 실행 메서드를 선택합니다. 이러한 적응형 접근 방식을 통해 일반적인 PHP 보안 강화 조치를 우회할 수 있습니다.
지속적인 재연결 메커니즘은 위험을 증가시킵니다.
현재 확인된 C2 서버는 응답하지 않지만, 악성코드는 15초마다 연결을 재시도하는 루프를 지속적으로 실행하도록 프로그래밍되어 있습니다. 이러한 지속성 메커니즘을 통해 공격자가 서버를 복구하더라도 감염된 시스템은 계속해서 노출된 상태로 유지됩니다.
lara-helper 또는 simple-queue를 설치한 모든 Laravel 애플리케이션은 사실상 RAT(원격 접근 트로이목마)가 내장된 상태로 작동하는 것과 같습니다. 공격자는 이를 통해 완전한 원격 셸 접근 권한, 임의의 파일을 읽고 수정할 수 있는 능력, 그리고 감염된 각 호스트의 시스템 수준 세부 정보에 대한 지속적인 가시성을 확보하게 됩니다.
실행 맥락이 영향력을 증폭시킨다
활성화는 서비스 제공자를 통해 애플리케이션 부팅 중에 자동으로 이루어지거나, simple-queue의 경우 클래스 자동 로딩을 통해 이루어집니다. 결과적으로 RAT는 웹 애플리케이션과 동일한 프로세스 내에서 실행되며, 동일한 파일 시스템 권한과 환경 변수를 상속받습니다.
이 실행 컨텍스트를 통해 공격자는 데이터베이스 자격 증명, API 키, .env 파일 내용과 같은 민감한 자산에 접근할 수 있습니다. 따라서 이 침해는 시스템 수준의 제어를 넘어 애플리케이션 비밀 정보와 인프라 접근 권한까지 완전히 노출시키는 결과를 초래합니다.
깔끔한 포장을 통한 신뢰 구축 전략
추가 조사 결과, 동일한 게시자가 악성 코드가 포함되지 않은 nhattuanbl/lara-media, nhattuanbl/snooze, nhattuanbl/syslog 등의 패키지를 추가로 배포한 것으로 밝혀졌습니다. 이러한 패키지들은 신뢰를 구축하고 악성 코드가 포함된 패키지의 사용을 장려하기 위한 평판 관리용 도구로 보입니다.
즉각적인 완화 및 대응 조치
악성 패키지를 설치한 조직은 시스템이 침해당했을 가능성을 염두에 두어야 합니다. 필요한 대응 조치에는 영향을 받은 라이브러리의 즉각적인 제거, 애플리케이션 환경에서 접근 가능한 모든 자격 증명의 교체, 그리고 확인된 C2 인프라에 대한 연결 시도 여부를 파악하기 위한 아웃바운드 네트워크 트래픽의 철저한 감사 등이 포함됩니다.
신속하게 대응하지 못하면 명령 및 제어 인프라가 다시 가동될 경우 공격자가 시스템에 다시 접근할 수 있는 취약한 상태가 될 수 있습니다.