Security auditing dissertation
Web applications 2 Comments »I have always been interested in web security since web applications offer a big attack surface and I am personally fascinated by the creativity and passion the attackers show.
Therefore you will read much more about security on this blog in the near future. ;-)
Yesterday I visited a dissertation arranged by the Java User Group Karlsruhe in the building of the University of Karlsruhe. Software Architect Patrick Schemitz from Netpioneer GmbH talked about Web Application Security Auditing.
Here are my notes:
- In case of non-targeted attacks, your server or application does not have to be absolute secure, just more secure than others. ;-)
- The German Federal Ministry has defined an interesting security layer model (PDF, german).
- Parallel to this layer is the layer of responsibility: from IT services over software developers to the end user.
-
Techniques
-
Server
- SQL injection
- Code injection (buffer overflow)
- SMTP injection
-
Client
- Cross side scripting
- Session hijacking
- Session riding
-
Server
-
Demos
-
Server
- PHP:
register_globals,eval() - Perl:
system() - SQL: two queries are build on one, skipping code by using a SQL comment
- PHP:
-
Client
- Reflected XSS: Manipulate input through URL to poison HTML sent from server
- Persistent XSS: Manipulate input which is stored on server and can be delivered every time
- Session hijacking if session data is stored in URL
-
Server
-
Counteractions
- Do not trust the user input.
- Filter input in different ways for database and frontend.
- Avoid
eval()andsystem(). - Search for dangerous files (backups with different file extension, test files etc.) in the webserver's document root.
- Security analytic tools do not find many holes.

