Overview:
This homework will demonstrate your knowledge of testing security controls aligned with Input
validation and business logic. You will also use the recommended OWASP testing guide reporting format
to report your test findings.
Assignment: Using the readings from weeks 7 and 8 as a baseline provide the following test and analysis descriptions
or discussion:
1. Testing for Reflected Cross-site scripting (OTG-INPVAL-001)
The OWASP site list multiple approaches and examples for BlackBox testing reflected XSS
vulnerabilities. In your own words, describe Reflected Cross-Site scripting. Then, List and
describe 4 different examples that could be used for testing. Be sure to conduct additional
research for each example to provide your own unique test example. This most likely means you
will need to conduct some research on Javascript to make sure your syntax is correct.
2. Testing for Stored Cross-site scripting (OTG-INPVAL-002)
The OWASP site list multiple approaches and examples for BlackBox testing Stored XSS
vulnerabilities. In your own words, describe Stored Cross-Site scripting. Then, List and describe 2
different examples that could be used for testing. Be sure to conduct additional research for
each example to provide your own unique test example. This most likely means you will need to
conduct some research on Javascript to make sure your syntax is correct.
3. Testing for SQL Injection (OTG-INPVAL-005)
SQL Injection remains a problem in applications yet could easily be fixed. The following SQL
statement is in an HTML form as code with the $ variables directly input from the user.
SELECT * FROM Students
WHERE EMPLID=’$EMPLID’ AND EMAIL=’$email’
Would a form or application that includes this code be susceptible to SQL Injection? Why?
What specific tests would you perform to determine if the application was vulnerable?
How would you fix this problem?
Be specific by providing the exact code in a language of your choice.
(e.g. Java, PHP, Python …)
4. Test business logic data validation (OTG-BUSLOGIC-001)
While reviewing some Java code, an analysis provided the following code snippets that contain
logic errors.
For each example, describe the issue and provide code that would fix the logical
error:
a.
2
int x;
x = x + 1;
System.out.println(“X = ” + x);
b.
for (i=1; i<=5; i++) ;
{
System.out.println(“Number is ” + i);
}
c.
if ( z > d) ;
{
System.out.println(“Z is bigger”);
}
d.
String m1=”one”;
String m2=”two”;
if(m1 == m2) {
System.out.println(“M1 is equal to M2”);
}
e. The formula for the area of a trapezoid is:
A = (b1+b2)/2 * h
The following Java code is the implementation.
Fix the logical error
double area;
double base1 = 2.3;
double base2 = 4.8;
double height = 12.5;
area = base1 + base2/2.0 * height;
Demonstrate your fixed code work as anticipated with a couple of different test
cases.
5. Test integrity checks (OTG-BUSLOGIC-003)
Conduct some additional research on Business Logic errors related to OTG-BUSLOGIC-003.
In
your own words describe and provide 2 unique examples of integrity checks. For your
examples, provide specific testing methods for each case.
6. Test defenses against Circumvention of WorkFlows (OTG-BUSLOGIC-006)
3
Conduct some additional research on Business Logic errors related to OTG-BUSLOGIC-006. In
your own words describe and provide 2 unique examples of circumvention of workflow.
For
your examples, provide specific testing methods for each case.
You should document the results for the tests and your comments, and recommendations for improved
security for each security control tested in a word or PDF document. Discuss any issues found and
possible mitigations.


0 comments