2X ApplicationServer 10.1 TuxSystem Class ActiveX Control TuxScripting.dll ExportSettings Remote File Overwrite Vulnerability tested against: Microsoft Windows Server 2003 r2 sp2 Internet Explorer 8 vendor description: "2X Software is a global leader of desktop and application delivery, remote access and cloud computing solutions." 2x homepage: http://www.2x.com/ download url: http://www.2x.com/applicationserver/download/ file tested: 2XAppServer.msi Background: The mentioned product installs an ActiveX control with the following settings: ProgID: TuxScripting.TuxSystem.1 CLSID: {5BD64392-DA66-4852-9715-CFBA98D25296} Binary Path C:\Program Files\2X\ApplicationServer\TuxScripting.dll Implements IObjectSafety: Yes Safe for Scripting: True Safe for Initialization: ? According to the IObjectSafety interface this control is Safe for Scripting then Internet Explorer will allow access to the availiable methods and properties. Vulnerability: Two methods perform unsecure file operations (read/write): ... /* DISPID=13 */ function ImportSettings( /* VT_BSTR [8] */ $FileName ) { /* method ImportSettings */ } /* DISPID=14 */ function ExportSettings( /* VT_BSTR [8] */ $FileName ) { /* method ExportSettings */ } ... by passing an existing file path to the ExportSettings() the resulting file content will look like this: <Default><Default>192.168.2.101:0<Default>WORKGROUP/SERVER2112638 38571<Default>SERVER 12798705432201204101VDSC:\Program Files\Internet Explorer\web\output< WebPageTemplate dt:dt="string">C:\Program Files\Internet Explorer\web\2X_default _style.xslt10SERVER1SERVER113269477691326947769 If a remote attacker is able to take control of the file content, could also be capable to run arbitrary code. At the time of this report, this could not be achieved yet (I have experienced some unuseful crashes by calling ImportSettings() ...) As attachment, proof of concept code which overwrites win.ini POC: