[보안뉴스 문가용 기자] 마이크로소프트의 파워셸 갤러리(PowerShell Gallery)가 소프트웨어 공급망 공격의 새로운 장이 되어가는 중이라는 경고가 보안 업체 아쿠아시큐리티(Aqua Security)로부터 나왔다. 파워셸 갤러리의 보호 장치들이 비교적 약한 편이고, 사용자는 제법 많은 편이기 때문에 공격자들로서는 안성맞춤인 표적일 수밖에 없다고 한다.

[이미지 = gettyimagesbank]
아쿠아시큐리티 측의 전문가들은 파워셸 갤러리의 정책들을 검토한 후 패키지 이름과 소유자 이름 등 여러 요소들을 가지고 이런 저런 실험들을 진행했다. 그리고 현재의 정책이 매우 허술하다는 사실을 알게 되었다. “정상적인 패키지를 본 따서 업로드 한 뒤, 사용자들이 정상 패키지와 가짜 패키지를 구분하기 어렵게 만드는 것이 전혀 어렵지 않습니다. 공급망 공격에 매우 취약한 상태라는 겁니다.”
주의 깊게 사용할 것
아쿠아의 보안 연구 수석인 야키르 카드코다(Yakir Kadkoda)는 “파워셸 갤러리에서 각종 모듈과 패키지들을 다운로드 받아 사용하는 중이라면, 앞으로 서명된 파워셸 모듈들만 사용할 것을 추천한다”고 정리한다. “그리고 서명된 것을 받는다 하더라도 주의에 주의를 거듭해야 한다”고도 강조한다. “당연하지만 파워셸 갤러리 측에서도 해야 할 일이 있습니다. 보안을 강화하는 것이죠. 지금 상태로는 사용자들을 전혀 보호하지 못합니다. 누구나 악성 모듈을 업로드할 수 있습니다.”
파워셸 갤러리의 운영 주체인 마이크로소프트는 아쿠아 측으로부터 조사 결과를 전해들었고, 그 중 두 개의 문제를 인정하고 조치를 취했다고 주장하고 있다. 하지만 아쿠아 측은 문제가 해결되지 않았고, 따라서 같은 문제가 여전히 존재한다는 입장이다. 이에 대해 마이크로소프트 측은 별 다른 입장 표명을 하지 않고 있다.
파워셸 갤러리는 파워셸 코드 모듈들을 공유하는 리포지터리로, 전 세계적으로 많은 사용자들을 보유하고 있다. 대다수 모듈들이 신뢰받는 단체들인 마이크로소프트와 AWS, VM웨어 등에서 개발되어 올라온다. 하지만 일반 개발자들이 올려 공유하는 사례들도 대단히 많다. 올해만 패키지 다운로드 수가 16억번으로 기록되고 있다.
타이포스쿼팅 공격에 취약
아쿠아 측이 발견한 문제 중 하나는 파워셸 갤러리가 타이포스쿼팅 공격에 특히 취약하다는 것이다. 타이포스쿼팅은 피해자가 뭔가를 검색할 때 오타를 낼 경우에 맞춰 악성 행위를 실시하는 기법이다. 예를 들어 powershell이라는 패키지를 다운로드 받기 위해 보통 powershell이라고 입력을 하기 마련인데, 가끔씩 poweshell이라든가 powershel이라고 오타를 낼 때가 있다. 공격자가 이런 경우를 대비하여 poweshell과 powershel이라는 이름의 악성 패키지를 업로드 해두면 오타를 낸 피해자가 powershell인줄 알고 악성 패키지를 다운로드 하게 된다. 이런 공격은 여러 리포지터리에서 매우 활발하게 발견되고 있다.
파워셸 갤러리의 정책을 꼼꼼하게 검토한 아쿠아 측은 “타이포스쿼팅 공격에 대한 방어력이 매우 허술하다”는 결론을 내렸다. 패키지에 이름을 붙이는 방법에 대한 규정이 엄격하지 않았고 예외도 많이 허용하고 있었기 때문이다. 규정이 있으나마나 해서 누구나 자유롭게 아무 이름을 붙일 수 있었고, 그렇기 때문에 오리지널 패키지와 똑같은 이름도 자주 허용이 된다고 아쿠아 측은 고발했다.
코드코다는 “다른 리포지터리들은 이렇게 허술하게 이름을 붙이게 하지 않는다”고 비판하며 “타이포스쿼팅 공격이 공격자들 사이에서 인기가 높기 때문에 관리하는 업체 측에서 예방책을 여러 가지로 마련하고 있기 때문”이라고 설명했다. “이미 리포지터리에 존재하는 패키지 이름은 최대한 중복시키지 않는 게 기본 중 기본입니다. 똑같은 이름을 사용 못하게 하는 것은 물론 비슷한 것들도 차단할 수 있어야 하죠. 하지만 파워셸 갤러리는 그렇지 않습니다.”
코드 개발자의 아이덴티티 위조도 쉬워
문제는 그것만이 아니었다. 패키지를 등록할 때는 개발자의 이름과 패키지 설명, 저작권과 같은 데이터도 같이 기입해야 하는데, 여기에도 아무런 인증 절차가 없다시피 했다. 즉 아무 이름이나 기입할 수 있었던 것인데, 이 때문에 공격자는 매우 정상적으로 보이는 정보들을 창의적으로 집어넣을 수 있었다. “사실상 파워셸 갤러리에 등록된 수많은 모듈 개발자들이, 실제 그 사람인지 아닌지 신뢰하기가 힘든 수준입니다. 이 부분은 MS가 보다 철저하게 바꿔야 할 부분입니다.”
파워셸 갤러리 사용자라면 모듈을 선택했을 때 나오는 정보(개발자 이름과 패키지 설명 등)만을 보고 진위 여부를 판단해야 하는데, 정책의 허술함을 모른다면 작성된 내용을 그대로 믿을 수밖에 없고, 그러면 속지 않는 게 이상하다. “예를 들어 공격자는 자기 마음대로 자신을 ‘마이크로소프트’라고 속여서 기입할 수 있습니다. 사용자는 마이크로소프트라고 믿을 수밖에 없죠.”
카드코다는 “아직까지 공격자들이 이러한 허술한 점을 악용하고 있다는 명확한 증거는 찾지 못했다”며 “아직 드러나지 않았을 수도 있고, 공격이 대대적으로 시작되지 않았을 수도 있다”고 말한다. “그렇다고 파워셸 갤러리의 이러한 취약점에 대해 걱정하는 게 섣부르다고 할 수도 없습니다. 보호 장치가 없다는 것도 사실이고, 그랬을 때 다른 리포지터리에서 공격 시도가 일어난 것도 사실이거든요. 파워셸 갤러리는 사용자도 무척이나 많은 플랫폼입니다. MS가 보안을 강화하든지, 공격자들이 먼저 움직이기 시작하든지, 둘 중 하나가 될 겁니다.”
3줄 요약
1. 파워셸 모듈들을 위한 리포지터리에서 허술한 점들이 발견됨.
2. 패키지 이름과 개발자 정보를 누구나 아무렇게나 기입할 수 있음.
3. 공격이 아직 명확히 시작되고 있지는 않지만 곧 그렇게 될 것으로 보임.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>