OSWE Prep
Syllabus: https://manage.offsec.com/app/uploads/2023/01/WEB-300-Syllabus-Google-Docs.pdf
Tools:
Section titled “Tools:”- Burp Suite
- dnSpy:
- Reverse Shells
Programming Concepts
Section titled “Programming Concepts”| Concept | What You Should Know: |
|---|---|
| Data Types | • How are they declared? |
| • How can they be casted/converted to other data types? | |
| • Which data types have the ability to hold multiple sets of data? | |
| Variables & Constants | • Why do some data types need to be dynamic? |
| • Why do some data types need to remain constant? | |
| Keywords | • Which words are reserved and why can they not be used as a variable or constant? |
| Conditional Statements | • How is data compared to create logic? |
| • Which operators are used to make these comparisons? | |
| • How does logic branch from an if/then/else statement? | |
| Loops | • What are loops primarily used for? |
| • How is a loop exited? | |
| Functions | • How are functions called? |
| • How are they called from a different file in the codebase? | |
| • How is data passed to a function? | |
| • How is data returned from a function? | |
| Comments | • Which characters denote the start of a comment? |
Web App Concepts
Section titled “Web App Concepts”| Concept | What You Should Know: |
|---|---|
| Input Validation | • How do web apps ensure user-provided data is valid? • Which types of data can be dangerous to a web app? |
| Database Interaction | • What kinds of databases can be used by a web app? • How do database management systems differ? • How does a web app create, retrieve, update, or delete database data? |
| Authentication | • How does a web app authenticate users? • What are hashes? Why is data often stored as hashes? |
Sample Projects for Code Review
Section titled “Sample Projects for Code Review”| Language | Sample Project for Code Review |
|---|---|
| PHP | • Beginner: Simple PHP Website • Advanced: Fuel CMS |
| ASP.NET & C# | • Beginner: Simple Web App MVC • Moderate: Reddnet |
| NodeJS | • Beginner: Employee Database • Moderate: JS RealWorld Example App |
| Java | • Beginner: Java Web App – Step by Step • Advanced: GeoStore |