Run Clear Help About
DevBug consists of two panels, the code editor and the information panel that sits below it.

Code Editor

The Code Editor has line numbering and syntax highlighting capabilities. The Code Editor is used to write, edit and paste PHP source code into. The Code Editor uses the CodeMirror Open Source project, this was found to be the most suitable for my needs after testing alternatives including writing my own.

Information Panel

The Information Panel is where all of DevBug's important information is displayed; information such as this help information and potential vulnerabilities detected by the Static Analysis engine.

The run button will trigger Static Analysis on the PHP source code contained within the Code Editor. The clear button will clear the code from the Code Editor and if your browser supports it, clear the code from local storage.

The source code is sent to the server un-encrypted, however, the source code is not recorded by the server in any way.

DevBug checks for the following vulnerabilities from user supplied input:

Cross-Site Scripting (XSS)
Header Manipulation
Code Evaluation
File Inclusion
File Reads
Command Injection
SQL Injection
XPath Injection
LDAP Injection
Header Injection
DevBug is a basic PHP Static Code Analysis (SCA) tool written mostly in JavaScript. The idea behind DevBug is to make basic PHP Static Code Analysis accessible online, to raise security awareness and to integrate SCA into the development process. DevBug could be used to quickly test a page of PHP that you think may have some potential vulnerabilities, to run across a piece of code you have found on Google that you are unsure of or to directly write your own code in.

Static Code Analysis should be part of your development process through a Security Development Lifecycle (SDL). The Taint Analysis data, such as sources, securing functions and sinks were provided by Johannes Dahse of the awesome RIPS PHP Static Code Analysis tool. The source code editor was created by using the awesome CodeMirror project.

DevBug would not have been possible without:

RIPS
CodeMirror
jQuery
PHP

DevBug was created by Ryan Dewhurst (ethicalhack3r) as part of his undergraduate university thesis.