SecurityFirst SampleReport
SecurityFirst SampleReport
Chase Blackwelder
ITIS 4221/5221
*This sample report is intended to help students with the formatting of the Tunestore I Report project for ITIS
4221/5221. This sample report is based on the Security First VM. Sections 1-2.1 of this report are fully completed.
The sections following 2.1 contain descriptions of what would be expected in order to receive full points for that
specific section.*
TABLE OF CONTENTS
Section Page #
1.1 Purpose
The objective of this Security First Bank & Trust application security assessment is to identify
and analyze vulnerabilities that are present within the application. More specifically, the purpose
of this security assessment and penetration test is to determine the overall security of the
application that is within the scope of the engagement. The vulnerabilities being discussed in this
report include several SQL injection and cross-site scripting (XSS) vulnerabilities.
The Security First Bank & Trust application is vulnerable to several SQL injection attacks. An
SQL injection attack can occur when a user is asked to enter normal input, but instead gives an
SQL statement that will unknowingly be run on the database server that is behind the web
application. This gives an attacker the opportunity to execute malicious SQL statements on the
database. For instance, using SQL injection, an attacker can find the credentials of other users in
the database, which they could then use to impersonate these users. Additionally, they could
access, modify, or delete the data that is contained in the database. In the case of the Security
First Bank & Trust application, SQL injection could be used by an attacker to login as a random
user without needing to know their credentials.
One instance of an SQL injection vulnerability in the Security First Bank & Trust application
allows an attacker to login as a random user. This vulnerability exists in the logging in
functionality on the login page of the application. The logging in functionality uses an SQL
statement to check if the entered username and password inputs exist in the database. If the
username and password does exist, then the user will successfully be logged in. Below is a
screenshot of the login form on the login page of the Security First Bank & Trust application.
' OR '1'='1
The ' OR '1'='1 input causes the SQL query that is run on the database to be TRUE, since 1=1 is
always TRUE. Since the password check portion of the SQL query is TRUE, the username field
is not needed, and the user is logged in as the first user in the database. The screenshots below
illustrate how an attacker can login as a random user by exploiting this SQL injection
vulnerability.
First, the attacker will need to start the tamper using the Tamper Data extension.
Next, a few random letters or numbers need to be entered into both the username and password
field and submitted using the submit button.
Complete all subsequent sections similar to how the section above was completed. Provide a
ith screenshots that show the
description of the specific vulnerability, and include examples w
vulnerability being maliciously exploited.
Explain what an XSS vulnerability is, and describe how it can be maliciously exploited by an
attacker.
Provide a brief description of a stored XSS vulnerability that is present in the application, and
provide examples with screenshots that show this vulnerability being maliciously exploited.
Provide a brief description of a reflected XSS vulnerability that is present in the application, and
provide examples with screenshots that show this vulnerability being maliciously exploited.