Hacking Database Network Protocols

advertisement
Hacking and Information
Security Projects
236349
Contact Person:
Amichai Shulman
Mobile: 054-5885083
eMail: Shulman@imperva.com
Project 1: Throwing the Net to Catch Hackers
General Description
One of the tools used by security researchers to learn about actual attacks is to deploy a
“Honey Pot”. This is a server intentionally exposed to the Internet coupled with a
monitoring device. Any access to the server is recorded and later analyzed to capture
actual trends in hacking techniques.
While deploying a general Honey Pot to study network level attack is a relatively easy
task, doing the same with the purpose of studying web application attacks is quite a
challenging one. One of the more effective techniques for implementing a web
application Honey Pot is actually staging a proxy server.
The purpose of this project is to create and deploy a web application Honey Pot and
collect sample data.
Requirements
Given a server machine and an Internet connection, students will have to design and
deploy an application level Honey Pot.
The focus of data analysis and study of this semester is about discovery methods (how
the Honey Pot is discovered by hackers) and information proliferation (how do other
hackers know about it).
Goals
Create essential tools for the research of application level hacking techniques.
Get the chance for a sneak preview into the world of hackers and crackers, their
methodology and tools.
Prerequisites
Knowledge of TCP/IP, HTTP and HTML
Programming knowledge (preferably Java)
Computer Security Course
Project 2 - Vulnerability Detection in Oracle Database
Packages
General Description
The Oracle database server is delivered with numerous internal software modules called
“Packages”. While packages are written in a language that draws from the standard SQL
language, they are stored within the server in an obfuscated manner called “wrapped”
format.
The built-in packages in the Oracle server have been notoriously susceptible to various
types of security vulnerabilities such as buffer overflow and SQL injection. Some work
has been done recently by researchers in order to overcome the obfuscation technique and
access the original code of the packages. Yet a different type of research effort was aimed
at looking for potentially vulnerable PL/SQL code.
Requirements
Based on an infrastructure laid down by students from previous semesters, in this
semester the students will focus on the following:

Reducing false positives by distinguishing externally accessible procedure from
internal service procedures

Extending coverage by looking for chains of calls

Extending coverage to detect buffer overflow vulnerabilities

Extending coverage to detect potential Lateral SQL Injection

Looking into Oracle 11g packages
Goals
Get an understanding of coding techniques that result in security vulnerabilities.
Get the chance for a sneak preview into the world of hackers and crackers, their
methodology and tools.
Prerequisites
Acquaintance with database servers (and preferably Oracle)
Strong background in programming and debugging applications
Project 3 - Time Based Identification of Web Attackers
General Description
When an attack against a web application is detected, one of the obvious questions is who
the real source for the attack is. In particular, attackers are commonly using compromised
computers to serve as proxies for their attacks, making hard to track back the actual
attacker.
An interesting first step into identification of the actual attack source is being able to tell
whether a request is conveyed through a proxy or not, assuming of course the use of
anonymous proxies.
Requirements
The students will be required to implement and evaluate various algorithms for detecting
whether an HTTP request is being sent directly to a target server or through a proxy
server, based on timing attributes of the request and response.
The project will include analysis and refinement of 2 or 3 suggested algorithms,
implementation of the algorithms and analysis of collected data in order to evaluate the
effectiveness of the algorithms.
Goals
Get acquainted with real-life web security problems
Experiment with combining mathematical algorithms with real-life web security
solutions.
Prerequisites
Programming skills (Java or C++)
Good understanding of TCP/IP and HTTP protocols
Download