[하루한줄] CVE-2021-29263: IntelliJ, Android Studio의 외부 저장소를 통한 원격 코드 실행 취약점
URL
Target
- IntelliJ IDEA
- Android Studio
Explain
IntelliJ와 Android Studio에서 악성 저장소를 가져올 때 임의 코드 실행 취약점이 발견되어 GitHub Security Lab에 세부 정보가 공개되었습니다.
Groovy를 기반으로 한 오픈소스 빌드 도구인 Gradle 을 clone 또는 checkout할 때 IntelliJ와 Android Studio는 유저 확인단계를 생략하고 빌드 스크립트를 실행합니다. 이를 악용한 해커가 악성 저장소를 타겟에 clone 혹은 checkout 하도록 유도하면 다음과 같이 Gradle의 exec
가 타겟의 상호작용 없이 malware dropper 기능을 수행할 수 있습니다.
apply plugin: 'java'
sourceCompatibility = 1.8
targetCompatibility = 1.8
void checkRequirements(){
exec {
executable 'touch'
args '/tmp/pwned_from_gradle'
}
}
build{
checkRequirements();
}
MS의 Visual Studio에서도 비슷한 유형의 취약점(CVE-2020-17156)이 패치된 적이 있으며 이는 오픈소스 저장소를 이용할 때 주의를 기울일 필요가 있음을 의미합니다.
본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.