[보안뉴스 문정후 기자] 악성 파이선 패키지들을 활용해 맥OS 생태계의 개발자들을 공격하는 캠페인이 발견됐다. 보안 업체 체크막스(Checkmarx)가 발견한 것으로, 문제의 악성 패키지의 이름은 “lr-utils-lib”이다. 설치와 함께 악성 코드가 실행되는데, 이를 통해 맥OS 생태계에서 활동하는 개발자들의 구글 클라우드 플랫폼(Goolge Cloud Platform) 크리덴셜이 공격자에게로 넘어가게 된다.
[이미지 = gettyimagesbank]
“문제의 패키지가 파이선 패키지 리포지터리인 PyPI에 업로드 된 것은 2024년 6월입니다. 설치와 동시에 실행되도록 꾸며져 있습니다. 또한 코드 내부에는 미리 정의된 해시들이 나열되어 있는데, 이를 활용해 맥OS 장비들에 침투하려 합니다. 침투한 후에는 구글 클라우드 크리덴셜을 찾아내려 하고요. 크리덴셜을 발견한다면 공격자들이 미리 마련해둔 원격의 서버로 전송됩니다.” 체크막스 측의 설명이다.
악성 기능이 자동으로 실행되도록 하는 건 패키지 내에 포함된 setup.py 파일이다. setup.py가 악성 코드를 실행시키면서 제일 먼저 하는 일은 현재 시스템이 맥OS인지 아닌지를 확인하는 것이다. 그런 다음 IOPlatformUUID라는 정보를 찾아 입수한다. 이는 맥OS 장비마다 가지고 있는 고유의 식별자다. 찾아낸 ID 정보는 SHA-256 알고리즘을 활용하여 해시 처리한다.
그렇게 해서 나온 해시 값은, 미리 악성 코드 내부에 저장되어 있던 해시 값들과 비교한다. 총 64개가 코드 내에 저장되어 있는데, “이는 곧 이번 공격이 고도로 표적화 되어 있다는 걸 알 수 있는 대목”이라고 체크막스는 지적한다. “공격자들은 이번에 자신들이 침투하고 싶어하는 시스템에 대해 잘 알고 있는 듯 합니다. 64개의 IOPlatformUUID 해시 값이 이를 반증합니다.”
비교를 통해 맞아 떨어지는 것을 발견했을 때 후속 공격이 시작된다. 두 개의 파일을 찾아 접근하려 하는데, 하나는 config/gcloud 디렉토리 내에 있는 application_default_credentials.json이고, 다른 하나는 같은 디렉토리의 credentials.db이다. 주로 구글 클라우드와 관련된 민감한 정보가 내포되어 있는 파일들이다. “찾는 내용이 나오면 이 멀웨어는 그 정보를 HTTPS POST 요청을 통해 밖으로 빼돌립니다. 서버의 주소는 europe-west2-workload-422915[.]cloudfunctions[.]net입니다.” 이 정보를 가지고 공격자는 개발자(피해자)의 구글 클라우드 계정에 접근할 수 있게 된다.
소셜엔지니어링 공격을 가미하다
흥미로운 건 이 캠페인에 소셜엔지니어링의 측면이 존재한다는 것이다. “저희는 이번 캠페인과 관련된 링크드인 프로파일 하나를 찾아냈습니다. 루시드 제니스(Lucid Zenith)라는 이름을 가진 한 인물의 계정인데, lr-utils-lib 패키지의 소유주 역시 루시드 제니스입니다. 링크드인 페이지에 의하면 루시드 제니스는 에이펙스컴퍼니즈(Apex Companies LLC)라는 회사의 CEO인데, 거짓 주장입니다. 멀웨어를 퍼트리는 것 외에 소셜엔지니어링도 진행하고 있다는 것입니다.”
이 시점에서 체크막스는 한 가지 실험을 진행했다. 여러 가지 인공지능 플랫폼에 접속한 후 루시드 제니스라는 인물에 대해 알려달라고 요청한 것이다. “그랬더니 다양한 대답이 나왔습니다. 일관성이 없는 답변들이었죠. 예를 들어 퍼플렉시티(Perplexity)라는 인공지능 검색엔진의 경우, 루시드 제니스가 에이펙스컴퍼니즈의 CEO라는 답을 돌려주더군요. 링크드인을 검색해 나온 정보를 확인 없이 사용자에게 제공한 것입니다.”
이러한 결과에 체크막스의 전문가들은 적잖이 놀랐다고 한다. “누군가 잘못된 정보를 인터넷에 올려두기만 하면, 인공지능이 그것을 기반으로 답을 만들어 사용자들에게 전달한다는 뜻이 됩니다. 즉 인공지능이 일종의 거짓 정보 증폭제 역할을 할 수 있다는 것이죠. 사실 조금만 더 검색하면 수상한 점들을 알아낼 수 있는데 말입니다. 링크드인에는 진짜 에이펙스컴퍼니즈 CEO로 보이는 인물의 페이지가 존재하거든요. 인공지능이 적어도 이러한 정보까지 아울러서 내놓을 수 있다면 조금 더 도움이 되겠지만, 지금은 그렇지 않습니다.”
하지만 희망적인 결과도 나왔다. 퍼플렉스 외 다른 인공지능 기술에 루시드 제니스에 대해 반복해서 질문을 하자 해당 인공지능은 루시드 제니스가 CEO가 아니라고 하며, 진짜 CEO의 이름을 찾아주었던 것이다. “그렇다는 건 단 하나의 인공지능이 아니라 여러 개의 인공지능 기술을 활용해 결과를 비교해봐야 신뢰할 만한 답을 얻을 수 있다는 뜻입니다. 정보를 찾아 소비할 때, 그것이 진짜인지 가짜인지 확인하려면 먼저 여러 출처의 정보를 비교해야 한다는 오래된 진리는 인공지능 시대에도 변하지 않는 듯합니다. 적어도 현재의 인공지능 기술로서는 그렇습니다.”
이 링크드인 프로파일은 왜 존재하는 것일까? 아직 다 알 수 없지만 악성 파이선 패키지 소유주를 확인하려고 누군가 시도했을 때 안심시키기 위해서일 가능성이 높다. 최근 코드 공유 사이트나 리포지터리 등에 악성 요소들을 몰래 올려 개발자들이 자기도 모르게 멀웨어를 만들도록 유도하는 공격이 끊임없이 이어지고 있다. 그에 따라 개발 과정에서 외부 패키지나 코드를 받아 사용하기 전에 여러 번 확인하라는 요구가 더 많이 생겨나고 있는데, 이를 위한 추가 함정일 수 있다는 뜻이다. 보안 업계가 ‘확인하라’과 외치자 공격자들이 한 번 더 적응하는 모습이다.
“아직 이 캠페인의 정확한 표적이 누구인지 다 알 수 없습니다. 배후의 공격자도 알지 못합니다. 좀 더 조사와 추적을 이어가야 할 필요가 있습니다. 다만 맥OS 환경에서 활동하는 개발자라면 파이선 패키지를 받을 때 유의해야 한다는 것, 누군가 자신을 가짜 CEO로 꾸며 악성 패키지를 퍼트리고 있다는 것을 염두에 두어야 한다는 건 확실합니다. 더불어 인공지능으로 얻어낸 정보를 아직 온전히 신뢰하기는 힘들다는 점도 기억해 두면 좋을 겁니다.”
3줄 요약
1. 맥OS 생태계의 개발자 노리는 캠페인 발견됨.
2. 파이선 패키지에 악성 코드 넣는 방식으로 노림.
3. 인공지능도 사이버 공격자들의 노림수에 속음.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>