header-logo
Suggest Exploit
explore-vulnerabilities

Explore Vulnerabilities

Version
Year

Explore all Exploits:

Type Confusion in TextFormat Constructor

There is a type confusion issue in the TextFormat constructor that is reachable because the FileReference constructor does not verify that the incoming object is of type Object (it only checks that the object is not native backed). The TextFormat constructor first sets a new object to type TextFormat, and then calls into script several times before setting the native backing object. If one of these script calls then calls into the FileReference constructor, the object can be set to type FileReference, and then the native object will be set to the TextFormat, leading to type confusion.

Use-after-free in MovieClip.swapDepths

There is a use-after-free in MovieClip.swapDepths, a POC is as follows: var clip1 = this.createEmptyMovieClip("clip1", 1); var clip2 = this.createEmptyMovieClip("clip2", 2); var n = {valueOf: func, toString: func}; clip1.swapDepths(n); function func(){ clip1.removeMovieClip(); //_root.createEmptyMovieClip("test", 1); trace("here"); return "clip2"; } A swf and fla are attached.

Buffer Overflow in ActionScript

If a watch is set on the childNodes object of an XML object, and then the XML object is manipulated in a way that causes its child nodes to be enumerated, the watch will trigger. If the function in the watch deletes all the child nodes, the buffer containing the nodes will be deleted, even though the original function will still access it when it unwinds. This can lead to a childnodes array in ActionScript containing pointers that can be specified by an attacker.

ActionScript Sound Class Cross-Origin Information Disclosure

An instance of ActionScript's Sound class allows for loading and extracting for further processing any kind of external data, not only sound files. Same-origin policy doesn't apply here. Each input byte of raw data, loaded previously from given URL, is encoded by an unspecified function to the same 8 successive sample blocks of output. The sample block consists of 8 bytes (first 4 bytes for left channel and next 4 bytes for right channel). Only 2 bytes from 8 sound blocks (64 bytes) are crucial, the rest 52 bytes are useless. Each byte of input from range 0-255 has corresponding constant unsigned integer value (a result of encoding), so for decoding purposes you can use simply lookup table (cf. source code from BoundlessTunes.as). Put attached file BoundlessTunes.swf on the HTTP server. Open http://<SERVER_HOSTNAME>/BoundlessTunes.swf?url=<URL> where <URL> is an URL address (e.g. leading to cross-origin resource). A received response will be displayed in alert window.

Error in PCRE engine version used in Flash

There is an error in the PCRE engine version used in Flash that allows the execution of arbitrary PCRE bytecode, with potential for memory corruption and RCE. The issue occurs in the handling of zero-length assertions; ie assertions where the object of the assertion is prepended with the OP_BRAZERO operator. Simplest testcase that will crash in an ASAN build is the following: (?(?<a>)?)

Remote file download vulnerability in candidate-application-form v1.0 wordpress plugin

The code in downloadpdffile.php doesn't do any sanity checks, allowing a remote attacker to download sensitive system files. An attacker can use a curl command to download the file from the server.

Recent Exploits: