Atom Database
Atom is The smallest part of a substance which can exist and still retain the properties of the substance. All familiar matter consists of atoms. An atom consists of a positively charged nucleus and orbiting electrons. The simplest atom is hydrogen (one proton and one electron), and the largest atom in nature is uranium (92 protons, 92 electrons, and 146 neutrons). KU
The purpose of this project is to collect useful attack snippets (atoms) which can be employed when performing WEB Application Security testing. Atom submissions must follow certain format which is:
- Atom name - It must be enclosed inside <h3>[atom name here]</h3> tags.
- Atom description - It must start on a new paragraph.
- Atom code - It must be enclosed inside <pre><code>[atom code here]</code></pre> tags.
- Atom tags - It mus be a comma separated string.


comments
Framejack
Hijack the current user browser window. This technique employs a single 100%x100% frame that sits on the top of the currently exploited remote content. When the user interacts with the browser window or tab the attacker persists state. This state is lost as soon as the user moves to another URL.
All Browsers, JavaScript, hijack, frame, persistency
getNetInfo
Retrieve network information. By using this function attackers can retrieve information about the local NATed IP address and host name. This information is highly sensitive since it enables attackers to conduct attacks on Intranet resources.
Firefox, Opera, Live Connect, JavaScript, Information Gathering
Freeze
Freeze the browser for defined time. The time is in milliseconds. While frozen, users are unable to interact with the browser. Certain browsers may terminate the script if the time value is too high. Attackers can use this function to force the browser to wait until certain remote event occurs.
All Browsers, JavaScript, freeze, DoS
googleAjaxSearch
Perform searches with Google from the browser. This technique can be employed by attackers in order to make self-propagating Ajax worms. The worms finds new targets via Google and uses your browser to attack.
All Browsers, JavaScript, Google, search
portScan
Perform port scanning. This not the only way attackers can perform port scanning. You need to adjust the timeout value in order to achieve the most desired result. This technique can be quite inaccurate sometimes.
All Browsers, JavaScript, portscan
getURLJ
Retrieve remote content by using Java Live Connect. This function is very suitable when a binary files is required to be downloaded. Works only on Live Connect browsers.
Firefox, Opera, Live Connect, JavaScript
zombie
Attach a zombie. This function will perform queries to “url” on a regular basis (specified by interval). Retrieved data is evaluated as a JavaScript expressions.
All Browsers, JavaScript, zombie
getDocument
Retrieve the document object in a cross-browser manner. This function is very useful when the attacker want to read the content of a particular iframe or frame.
All Browsers, JavaScript, document, iframe
historyScan
Scan user history. This function enumerates the current user visited links by performing checks on their style.
All Browsers, JavaScript, history, scan
b64encode
This function encodes a string in base64 format.
JavaScript, Cross-platformed, base64, Encodings
b64decode
This function decodes base64 strings.
JavaScript, Cross-platformed, base64, Encodings
Firefox B64 Functions
These functions are part of the javascript window object in the Gecko engine.
JavaScript, Firefox, base64, Encodings
include
Load a remote script file. This function is non-blocking which means that you have to wait for the script to load before using its declarations.
JavaScript, All Browsers, include, modules
include
Load a remote script file. This function is non-blocking which means that you have to wait for the script to load before using its declarations. For that reason you may want to use the onload callback function.
Mozilla, Firefox, Opera, include, modules
forcefocus
This function can be used to force the focus on a particular element from the current dom.
All Browsers, focus
walkJSON
This function walk the entire JSON (the j parameter) tree. The c parameter is the function that handles walked nodes.
universal
parseURL
This function parse the URL into an object.
universal
STICKY PHISHING
This payload launches a phishing attack to the user. It’s sticky cuz it won’t stop prompting the victim to enter his username and password until he enters both. Once obtained they are forwarded to a third-party site. Ideal for persistent XSS attacks.
JavaScript, Universal, Password Theft
POST METHOD XSS
Attack HTML page for XSS vuls that can only be exploited as a POST request (as opposed to GET)
Universal, HTML, JavaScript
MAC ADDRESS
You can steal the user’s MAC address with Java 1.6. For Internet Explorer you can use an applet. This information is very sensitive, because the MAC address is a unique identifier. Although it can be easily changed by the user, it can be useful to identify some users with dynamic IP address or using proxies.
Firefox, Opera, Live Connect, Java SE 6, JavaScript, Information Gathering