Published on December 24th, 2010 | by NJ Ouchn0
Learning Application Assessment with WackoPicko The Vulnerable Website
WackoPicko is a website that contains known vulnerabilities. It was first used for the paper Why Johnny Can’t Pentest: An Analysis of Black-box Web Vulnerability Scanners
Install From Source
Import the WackoPicko database into MySQL using a command like the following:
mysql -u -p < current.sql
This will create the MySQL user wackopicko with the password webvuln!@# as well as create the wackopicko table.
The wackopicko table contains all of the data that was present while testing the scanners in Why Johnny Can’t Pentest.
The final step is to enable read/write access to the upload directory of WackoPicko for the webserver user. An easy way to do this is:
chmod 777 -R upload
- Reflected XSS
The query parameter is vulnerable.
- Stored XSS
The comment field is vulnerable.
- SessionID vulnerability
The session cookie value is admin_session, which is an auto-incrementing value.
- Stored SQL Injection
http://localhost/users/register.php -> http://localhost/users/similar.php
The first name field of the register users form contains a stored SQL injection which is then used unsanitized on the similar users page.
- Reflected SQL Injection
The username field is vulnerable.
- Directory Traversal
The tag field has a directory traversal vulnerability enabling a malicious users to overwrite any file the web server uses has access to.
- Multi-Step Stored XSS
The comment field is vulnerable to XSS, however must go through a preview form.
- Forceful Browsing
The user doesn’t have to purchase the picture to see the high quality version.
- Command-line Injection
The password field is vulnerable to a command line injections.
- File Inclusion
The page is vulnerable to a file inclusion vulnerability, however you have to include %00 at the end.
- Parameter Manipulation
The userid parameter can be manipulated to see any user’s page when you need to be logged in otherwise.
The name parameter is vulnerable.
- Logic Flaw
A coupon can be applied multiple times reducing the price of an order to zero. The coupon in the initial data is SUPERYOU21.
- Reflected XSS Behind a Flash Form
The value parameter is vulnerable.
- Weak username/password
There is a default username/password combination of admin/admin.