Rapid7 VulnDB

Invision IP.Board unserialize() PHP Code Execution

Back to Search

Invision IP.Board unserialize() PHP Code Execution

Disclosed
10/25/2012
Created
05/30/2018

Description

This module exploits a php unserialize() vulnerability in Invision IP.Board <= 3.3.4 which could be abused to allow unauthenticated users to execute arbitrary code under the context of the webserver user. The dangerous unserialize() exists in the '/admin/sources/base/core.php' script, which is called with user controlled data from the cookie. The exploit abuses the __destruct() method from the dbMain class to write arbitrary PHP code to a file on the Invision IP.Board web directory. The exploit has been tested successfully on Invision IP.Board 3.3.4.

Author(s)

  • EgiX
  • juan vazquez <juan.vazquez@metasploit.com>
  • sinn3r <sinn3r@metasploit.com>

Platform

PHP

Architectures

php

Development

References

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/unix/webapp/invision_pboard_unserialize_exec
msf exploit(invision_pboard_unserialize_exec) > show targets
    ...targets...
msf exploit(invision_pboard_unserialize_exec) > set TARGET < target-id >
msf exploit(invision_pboard_unserialize_exec) > show options
    ...show and set options...
msf exploit(invision_pboard_unserialize_exec) > 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

;