GemStuffer로 알려진 악의적인 행위자가 영국 시의회 포털에서 데이터를 추출하기 위해 150개 이상의 RubyGems 패키지를 손상시켰습니다. 이 캠페인은 스터핑 기법을 사용하여 합법적인 라이브러리와 유사한 이름의 젬을 생성해 개발자를 속입니다. 설치되면 이러한 젬은 시민의 민감한 정보와 행정 기록을 수집하여 공격자가 제어하는 서버로 유출합니다.
Ruby 생태계에서 스터핑 공격이 작동하는 방식 🛡️
공격은 타이포스쿼팅이나 콤보스쿼팅과 같이 인기 있는 라이브러리와 철자상으로 유사한 이름의 젬을 대량으로 게시하는 데 기반을 둡니다. 설치되면 시청 포털에서 이름, 주소 및 공공 서비스 기록을 포함한 데이터를 스크래핑하는 코드를 실행합니다. 유출은 원격 서버에 대한 HTTP 요청을 통해 이루어집니다. 악성 젬이 원본의 기본 기능을 모방하고 유해한 페이로드를 보조 모듈이나 코드 난독화를 통해 숨기기 때문에 탐지가 복잡합니다.
GemStuffer: 허락 없이 데이터를 수집하는 수집가 😅
GemStuffer는 오픈 소스의 개념을 문자 그대로 이해한 것 같습니다. 시청 포털에서 찾은 모든 것이 자신의 것입니다. 150개 이상의 젬을 통해 어떤 기록 관리자도 창백하게 만들 정도의 타인의 데이터 라이브러리를 구축했습니다. 재미있는 점은 공개 API를 요청하는 대신 악성코드를 통해 '부탁'하는 방식을 선호했다는 것입니다. 적어도 누군가가 묻는다면, 코드는 자신의 것이 아니었고 단지 지나가는 길이었다는 것을 알 것입니다.