======= Summary ======= Name: Symantec pcAnywhere Remote Code Execution (Preauth) Release Date: 30 April 2012 Reference: NGS00118 Discoverer: Edward Torkington <edward.torkington@ngssecure.com> Vendor: Symantec Vendor Reference: Systems Affected: Symantec pcAnywhere 12.5.x IT Management Suite 7.0 pcAnywhere Solution 12.5.x IT Management Suite 7.1 pcAnywhere Solution 12.6.x Risk: Critical Status: Published ======== TimeLine ======== Discovered: 14 September 2011 Released: 26 September 2011 Approved: 26 September 2011 Reported: 26 September 2011 Fixed: 24 January 2012 Published: 30 April 2012 =========== Description =========== Symantec pcAnywhere Version 12.5 and below is vulnerable to a remote code execution vulnerability. A flaw exists in the authentication component listening on TCP port 5631 which does not sufficiently validate user-submitted data. ================= Technical Details ================= It is possible to supply an invalid login that causes heap corruption and an object pointer overwrite. We end up in with a reliable overwrite of EAX as detailed below: mov ECX,DWORD PTR DS:[EAX] mov EDX,DWORD PTR DS:[ECX+8] push EAX call EDX A reliable overwrite in (non-rebasing/ASLR DLLs) of a fully patched Windows XP SP3 was found such that remote command execution can be gained. As the service restarts indefinitely, a reliable exploit in Windows 7 was also developed which effectively brute-forces a valid address to bypass ASLR. =============== Fix Information =============== http://www.symantec.com/security_response/securityupdates/detail.jsp?fid=security_advisory&pvid=security_advisory&year=2012&suid=20120124_00 NGS Secure Research http://www.ngssecure.com