Rapid7 Vulnerability & Exploit Database

MS13-090 CardSpaceClaimCollection ActiveX Integer Underflow

Back to Search

MS13-090 CardSpaceClaimCollection ActiveX Integer Underflow



This module exploits a vulnerability on the CardSpaceClaimCollection class from the icardie.dll ActiveX control. The vulnerability exists while the handling of the CardSpaceClaimCollection object. CardSpaceClaimCollections stores a collection of elements on a SafeArray and keeps a size field, counting the number of elements on the collection. By calling the remove() method on an empty CardSpaceClaimCollection it is possible to underflow the length field, storing a negative integer. Later, a call to the add() method will use the corrupted length field to compute the address where write into the SafeArray data, allowing to corrupt memory with a pointer to controlled contents. This module achieves code execution by using VBScript as discovered in the wild on November 2013 to (1) create an array of html OBJECT elements, (2) create holes, (3) create a CardSpaceClaimCollection whose SafeArray data will reuse one of the holes, (4) corrupt one of the legit OBJECT elements with the described integer overflow and (5) achieve code execution by forcing the use of the corrupted OBJECT.


  • Unknown
  • juan vazquez <juan.vazquez@metasploit.com>




Module Options

To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':

msf > use exploit/windows/browser/ms13_090_cardspacesigninhelper
msf exploit(ms13_090_cardspacesigninhelper) > show targets
msf exploit(ms13_090_cardspacesigninhelper) > set TARGET < target-id >
msf exploit(ms13_090_cardspacesigninhelper) > show options
    ...show and set options...
msf exploit(ms13_090_cardspacesigninhelper) > exploit

Time is precious, so I don’t want to do something manually that I can automate. Leveraging the Metasploit Framework when automating any task keeps us from having to re-create the wheel as we can use the existing libraries and focus our efforts where it matters.

– Jim O’Gorman | President, Offensive Security