Post Page Advertisement [Top]



Click here to send WhatsApp On Unsaved Mobile Numbers For Free

Ethical Hacking Burp Suite Fundamentals: Proxy, HTTP History & Repeater | Day 12
Ethical Hacking

🛡️ Ethical Hacking — Day 12

Burp Suite Fundamentals: Proxy, HTTP History & Repeater

⚠️ LEARNING PURPOSE ONLY: This tutorial is strictly for educational and defensive cybersecurity learning. Use Burp Suite only with applications you own, deliberately vulnerable training applications, or systems for which you have explicit permission to test. Do not intercept or modify traffic from random websites, other people's accounts, or networks you don't control.

Welcome to Day 12.

Yesterday we learned how web applications communicate using:

  • HTTP/HTTPS

  • GET/POST

  • Headers

  • Cookies

  • Sessions

  • Authentication

  • Authorization

  • Parameters

  • APIs

  • Browser Developer Tools

Today we'll introduce one of the most important tools used in web application security:

🟠 Burp Suite

Burp Suite is a web security testing platform from PortSwigger. Its tools can be used to inspect and test HTTP(S) traffic in an authorized environment.


🎯 Day 12 Learning Objectives

Today you'll learn:

  • What Burp Suite is

  • Proxy concept

  • Browser → Burp → Server

  • Installing Burp Suite

  • Starting Burp

  • Burp Proxy

  • HTTP history

  • Intercept

  • Repeater

  • Request modification

  • Response analysis

  • Parameters

  • Headers

  • Cookies

  • Browser configuration

  • Linux setup

  • Windows setup

  • macOS setup

  • Safe local web-security lab


1. What Is Burp Suite?

Think of Burp Suite as a controlled inspection point between your browser and a web application.

Without Burp:

Browser
   │
   │ HTTP/HTTPS
   ▼
Web Server

With Burp:

Browser
   │
   │ HTTP/HTTPS
   ▼
┌──────────────┐
│ Burp Suite   │
│    Proxy     │
└──────┬───────┘
       │
       │ HTTP/HTTPS
       ▼
Web Server

This lets you inspect requests and responses in an authorized test environment.


2. Why Is Burp Useful?

Suppose your browser sends:

GET /products?id=25 HTTP/1.1
Host: lab.local

Burp lets you see the request clearly.

You can then understand:

Method
Path
Parameters
Headers
Cookies
Body
Response

This makes Burp extremely useful for learning web security.


3. Burp's Main Tools

Burp Suite contains several tools.

Today we'll focus on:

Proxy
   ↓
HTTP traffic interception

HTTP history
   ↓
Previously observed requests

Repeater
   ↓
Manually resend requests

Target
   ↓
Understand application scope/site structure

Later we'll explore additional features.


4. Installing Burp Suite

Use the official PortSwigger download page.

Official Burp Suite Download

There are different Burp Suite editions.

For learning, Burp Suite Community Edition is sufficient for many basic exercises.


🐧 Linux Installation

Download the Linux installer from the official PortSwigger site.

After installation, launch Burp Suite.

You can verify the application from your desktop application menu or launch it from the installation location.

If your installation provides the burpsuite command:

burpsuite

If that command isn't available, use the installed application launcher.


🪟 Windows Installation

Download the Windows installer from the official PortSwigger website.

Install it normally.

Then open:

Start Menu
   ↓
Burp Suite

🍎 macOS Installation

Download the macOS installer from the official PortSwigger website.

Install it and open:

Applications
   ↓
Burp Suite

On macOS, follow the application's prompts if additional permissions are requested.


5. Start Burp Suite

When Burp opens, you'll see options for creating/opening a project.

For learning:

Temporary Project

is sufficient.

Then choose the default configuration unless you have a specific reason to change it.


6. Burp Proxy

The Proxy is the most important feature for today's lesson.

Conceptually:

Browser
   │
   │ Request
   ▼
Burp Proxy
   │
   │ Request
   ▼
Application
   │
   │ Response
   ▼
Burp Proxy
   │
   │ Response
   ▼
Browser

7. Proxy Listener

Burp normally provides a local proxy listener.

A common default is:

127.0.0.1:8080

That means:

127.0.0.1

is your own computer.

And:

8080

is the proxy port.

Important: Verify the actual listener shown in your Burp installation rather than assuming the default.


8. Check Burp's Proxy Listener

In Burp, go to:

Proxy
   ↓
Proxy settings
   ↓
Proxy listeners

You should see something similar to:

127.0.0.1:8080

If it is running:

Status: Running

9. Browser → Burp

Now your browser needs to send traffic through Burp.

The architecture becomes:

Browser
   │
   │ 127.0.0.1:8080
   ▼
Burp
   │
   ▼
Internet / Local Lab

For today's exercises, I strongly recommend using a separate browser profile or a dedicated browser for your lab.

This prevents your normal browsing traffic from accidentally being captured.


10. Why Use a Separate Browser Profile?

Suppose you configure your everyday browser to use Burp.

Then you visit:

Email
Banking
Social Media
Company applications

Those requests could appear in Burp.

That's unnecessary and potentially dangerous.

Instead:

Dedicated Lab Browser
        ↓
       Burp
        ↓
 Local Training Application

Keep your personal browsing separate.


11. Browser Proxy Configuration

You need to configure the browser to use:

Proxy host:
127.0.0.1

Proxy port:
8080

The exact UI differs between Chrome, Firefox, Edge, and Safari.

For security-training purposes, Firefox is often convenient because it provides its own proxy settings, rather than relying entirely on the operating-system proxy.


12. Firefox Lab Configuration

Open Firefox settings.

Find:

Settings
   ↓
Network Settings
   ↓
Configure Proxy

Select:

Manual proxy configuration

Enter:

HTTP Proxy:
127.0.0.1

Port:
8080

You may also need to configure HTTPS proxy behavior depending on your lab setup.

For a local HTTP-only training application, HTTPS certificate configuration isn't necessary.


13. Start With HTTP, Not HTTPS

This is important for beginners.

If your lab application is:

http://127.0.0.1:8080

you don't need to deal with TLS interception yet.

You can first learn:

HTTP
 ↓
Burp
 ↓
Request
 ↓
Response

Later we'll configure Burp's CA certificate for authorized HTTPS testing.


14. Build a Local Training Target

Before intercepting anything, we want a safe target.

Use:

127.0.0.1

and a deliberately vulnerable application.

Good training applications include:

  • OWASP Juice Shop

  • OWASP WebGoat

  • DVWA

For example:

Your Computer
     │
     ├── Browser
     │
     ├── Burp Suite
     │
     └── Training Application

Everything stays under your control.


15. Check for a Local Application

🐧 Linux

ss -tuln

🪟 Windows

netstat -ano

🍎 macOS

lsof -nP -iTCP -sTCP:LISTEN

Look for a service running on a local port.

For example:

127.0.0.1:8080

If nothing is running, that's fine.

We can install a training application later.


16. Test Burp With HTTP

Suppose your local application is available at:

http://127.0.0.1:8080

Configure your lab browser to use:

127.0.0.1:8080

as the proxy.

Then visit:

http://127.0.0.1:8080

The request should appear in Burp.


17. Intercept

Go to:

Proxy
   ↓
Intercept

You may see:

Intercept is ON

When interception is enabled, Burp pauses requests.

Conceptually:

Browser
   │
   │ Request
   ▼
Burp
   │
   │ ⏸ PAUSED
   │
   ▼
Application

18. Forward

Once you've inspected the request, Burp allows you to forward it.

Conceptually:

Browser
   ↓
Burp
   ↓
[Forward]
   ↓
Server

This is a core Burp workflow.


19. Drop

Burp can also discard a request.

Browser
   ↓
Burp
   ↓
[Drop]
   ✕
Server

This is useful for understanding how requests affect application behavior.

For today's lesson, only experiment with your local training application.


20. HTTP History

Turn interception off when you don't want every request paused.

Then use:

Proxy
   ↓
HTTP history

You'll see requests such as:

GET /
GET /css/style.css
GET /js/app.js
GET /favicon.ico
POST /login

This gives you an overview of the application's traffic.


21. Why HTTP History Matters

Suppose a web application has:

/login
/products
/profile
/api/users
/api/orders

HTTP history can help you understand how the browser communicates with those endpoints.

Think of it as:

A network diary for your authorized web application testing.


22. Inspect a Request

Click a request.

You may see:

GET /products?id=25 HTTP/1.1
Host: 127.0.0.1:8080
User-Agent: Mozilla/5.0
Accept: text/html

Now you can identify:

Method
Path
Host
Headers
Parameters

23. Inspect the Response

The response might look like:

HTTP/1.1 200 OK
Content-Type: text/html

<html>
...
</html>

Look for:

Status code
Headers
Cookies
Body

24. Request and Response

Remember:

REQUEST
Browser → Server

RESPONSE
Server → Browser

Burp lets you inspect both.

This is why understanding HTTP from Day 11 is essential.


25. Repeater

Now we reach one of Burp's most useful tools:

🔁 Repeater

Repeater lets you take an HTTP request and manually resend it.

Conceptually:

Browser
   ↓
Burp
   ↓
Request
   ↓
Repeater
   ↓
Modify
   ↓
Send
   ↓
Response

This is extremely useful for understanding how an application responds to different inputs.


26. Sending a Request to Repeater

In Burp HTTP history:

  1. Select a request.

  2. Right-click it.

  3. Choose the option to send it to Repeater.

  4. Open the Repeater tab.

You'll see the request.


27. Example Repeater Request

Suppose you have:

GET /products?id=25 HTTP/1.1
Host: 127.0.0.1:8080

You could change:

id=25

to another valid test value in your own lab:

id=26

Then click:

Send

Observe the response.

This is a safe way to learn how parameters affect application behavior.


28. Compare Responses

Suppose:

Request 1:
id=25

Response:
200 OK

Then:

Request 2:
id=26

Response:
200 OK

You can compare:

Status
Length
Headers
Body

This is the beginning of structured web application testing.


29. Don't Start With Exploit Payloads

At this stage, don't immediately try:

SQL injection
XSS
Command injection
Path traversal

First learn:

Normal request
       ↓
Normal response
       ↓
Change one input
       ↓
Observe
       ↓
Understand

This makes later vulnerability testing much easier.


30. Parameters in Repeater

Parameters can appear in:

URL

?id=25

Form body

username=student

JSON

{
  "id": 25
}

Headers

X-Test: example

Cookies

Cookie: lab_session=example

For your own lab, you can modify one parameter at a time and observe the result.


31. Request Modification Exercise

Use your local training application.

Suppose the request is:

GET /products?id=1 HTTP/1.1
Host: 127.0.0.1:8080

Send it to Repeater.

Change:

id=1

to:

id=2

Send.

Then change it to:

id=3

Send again.

Record:

ParameterStatusResponse LengthObservation
id=1_________
id=2_________
id=3_________

This teaches you how controlled input changes can affect an application.


32. Headers in Repeater

You can also inspect headers:

User-Agent: Mozilla/5.0
Accept: text/html

For your local lab, you can change a harmless header:

X-Lab-Test: Day12

Send the request.

Then observe whether the server:

  • Ignores it

  • Reflects it

  • Logs it

  • Returns it

  • Rejects it

This is a good introduction to HTTP header behavior.


33. Cookies in Burp

You may see:

Cookie: session=...

Treat real cookies as credentials.

For the lab, use only training session values.

Never copy real cookies into:

  • Screenshots

  • GitHub

  • Blog posts

  • Chat messages

  • Public documentation


34. Burp Scope

One of the most important habits is defining scope.

Burp lets you work with a target scope.

Conceptually:

IN SCOPE
│
└── 127.0.0.1
      └── Training Application

OUT OF SCOPE
│
├── Personal websites
├── Banking
├── Email
├── Social media
└── Other users' applications

Always keep your testing target clearly defined.


35. Why Scope Matters

Imagine your browser sends:

Google
Email
Cloud services
Social media
Local application

If Burp captures everything, you may unintentionally collect sensitive traffic.

Therefore:

Use a dedicated browser profile and local lab whenever possible.


36. Burp and HTTPS

HTTPS introduces an additional concept.

Your browser normally verifies the server's TLS certificate.

Burp, when configured as an authorized interception proxy, acts between the browser and server.

Conceptually:

Browser
   │
   │ TLS
   ▼
Burp
   │
   │ TLS
   ▼
Server

To inspect HTTPS traffic in a lab, the browser needs to trust Burp's local CA certificate.

We'll cover this carefully in the next lessons.


⚠️ Never Disable TLS Verification Globally

You may encounter tutorials telling you to:

"Disable certificate verification."

Don't make this a normal practice.

For a controlled lab, install and trust the Burp CA certificate only in the dedicated lab browser/profile.

Do not weaken security settings in your normal browsing environment.


37. Linux Practical Session

Check Burp

Launch Burp Suite.

Then:

curl http://127.0.0.1:8080/

If your training application is listening on port 8080, note that this command targets the application directly unless you explicitly configure curl to use Burp as a proxy.

To send HTTP traffic through a local Burp proxy, the conceptual command is:

curl -x http://127.0.0.1:8080 http://YOUR-LAB-HOST/

Use this only with your local training application.


38. Windows Practical Session

Check local services:

netstat -ano

Then, if your local training application is running:

curl.exe http://127.0.0.1:8080/

To explicitly use Burp as the proxy:

curl.exe -x http://127.0.0.1:8080 http://YOUR-LAB-HOST/

Again, replace YOUR-LAB-HOST only with your authorized local training target.


39. macOS Practical Session

Check listening services:

lsof -nP -iTCP -sTCP:LISTEN

Test the local application:

curl http://127.0.0.1:8080/

Send traffic through Burp:

curl -x http://127.0.0.1:8080 http://YOUR-LAB-HOST/

40. A Note About Port Conflicts

A common beginner mistake is:

Burp → 127.0.0.1:8080
Application → 127.0.0.1:8080

Both cannot normally listen on the same IP/port combination.

You might instead use:

Burp:
127.0.0.1:8080

Training App:
127.0.0.1:3000

Then:

Browser
   │
   │ Proxy → :8080
   ▼
Burp
   │
   ▼
Training App → :3000

The exact ports can be different.


🧪 Day 12 Main Lab

Objective

Intercept and modify your own local web application's request.

Step 1

Start your local training application.

For example:

http://127.0.0.1:3000

Step 2

Start Burp Suite.

Verify the proxy listener.

Example:

127.0.0.1:8080

Step 3

Use a dedicated browser profile.

Configure:

Proxy:
127.0.0.1

Port:
8080

Step 4

Visit:

http://127.0.0.1:3000

Step 5

Turn:

Proxy → Intercept → ON

Step 6

Reload the page.

You should see a request similar to:

GET / HTTP/1.1
Host: 127.0.0.1:3000

Step 7

Inspect:

Method
Path
Host
Headers

Step 8

Click:

Forward

Step 9

Turn interception off.

Go to:

Proxy → HTTP history

Step 10

Find your request.

Send it to:

Repeater

Step 11

Modify a harmless value.

For example:

X-Lab-Test: Day12

Step 12

Send the request.

Compare:

Original Response
        vs
Modified Response

📊 Day 12 Lab Report

Create:

ItemResult
Training application______
Local URL______
Burp proxy______
HTTP method______
Endpoint______
Status code______
Request headers______
Response headers______
Parameter tested______
Modified value______
Response difference______

Never include actual passwords, authentication tokens, session cookies, or API keys.


🧪 Practical Exercise — Request Lifecycle

Draw this diagram yourself:

┌───────────┐
│  Browser  │
└─────┬─────┘
      │
      │ HTTP Request
      ▼
┌───────────┐
│    Burp   │
│   Proxy   │
└─────┬─────┘
      │
      │ Forward
      ▼
┌───────────┐
│   Local   │
│ Training  │
│    App    │
└─────┬─────┘
      │
      │ HTTP Response
      ▼
┌───────────┐
│    Burp   │
└─────┬─────┘
      │
      ▼
┌───────────┐
│  Browser  │
└───────────┘

This diagram is worth remembering.


🔬 Burp vs Developer Tools

You learned Developer Tools yesterday.

Now compare them.

FeatureBrowser DevToolsBurp Suite
View requests✅✅
View responses✅✅
View headers✅✅
View cookies✅✅
Intercept requestsLimited✅
Modify requestsLimited✅
Re-send requestsLimited✅
Repeater❌✅
Security testing workflowBasicAdvanced

Developer Tools are excellent for understanding browser behavior.

Burp provides a dedicated platform for controlled security testing.


🧠 Security Mindset

When you see:

GET /profile?id=25

don't immediately think:

"How do I exploit this?"

Instead ask:

What does id mean?
       ↓
Who is allowed to access id=25?
       ↓
Does authentication matter?
       ↓
Does authorization matter?
       ↓
Does changing the value change access?
       ↓
What should the secure behavior be?

This leads naturally into access-control testing, which we'll study later.


📝 Day 12 Assignment

Answer these questions:

1.

What is Burp Suite?

2.

What is a proxy?

3.

What is Burp Proxy used for?

4.

What is HTTP history?

5.

What does Intercept do?

6.

What does Forward do?

7.

What does Drop do?

8.

What is Repeater?

9.

Why is Repeater useful?

10.

What is the difference between Browser Developer Tools and Burp Suite?

11.

Why should you use a dedicated browser profile for security testing?

12.

Why should you never publish session cookies?

13.

Why should HTTPS certificate trust be configured only for your controlled lab?

14.

Why is scope important?

15.

Why should you modify only one parameter at a time during controlled testing?


🏆 Day 12 Challenge

Complete:

START
  ↓
Burp Suite
  ↓
Configure Proxy
  ↓
Dedicated Browser
  ↓
Local Training App
  ↓
Intercept Request
  ↓
Inspect Request
  ↓
Forward
  ↓
HTTP History
  ↓
Send to Repeater
  ↓
Change ONE harmless value
  ↓
Send
  ↓
Compare Response
  ↓
Document
  ↓
STOP

Then write:

"I intercepted an authorized request from ______. The request used ______. I changed ______ and observed ______ in the response."


⚠️ Ethical Hacking Reminder

LEARNING PURPOSE ONLY: Burp Suite can intercept credentials, cookies, tokens, private messages, and other sensitive information. Use it only with your own applications, your own accounts, deliberately vulnerable labs, or systems for which you have explicit written permission.

Never configure Burp to capture your normal banking, email, social-media, or other private browsing traffic for practice.

Permission → Scope → Intercept → Analyze → Test → Document → Secure


✅ Day 12 Summary

Today you learned:

  • Burp Suite

  • Proxy

  • Proxy listener

  • Browser configuration

  • Intercept

  • Forward

  • Drop

  • HTTP history

  • Request inspection

  • Response inspection

  • Repeater

  • Request modification

  • Headers

  • Parameters

  • Cookies

  • Scope

  • HTTPS interception concepts

  • Linux practical commands

  • Windows PowerShell practical commands

  • macOS practical commands

  • Safe local web-security lab

🔑 Most Important Lesson

Burp Suite is not about randomly changing requests. It's about understanding how an application communicates and verifying whether the application behaves securely under controlled, authorized testing.


🔜 Day 13 — Burp Suite Deep Dive: Requests, Responses & Parameters

Tomorrow we'll go deeper into:

  • Request anatomy

  • Response anatomy

  • Query parameters

  • Form parameters

  • JSON parameters

  • Cookies

  • Headers

  • Repeater

  • Comparing responses

  • URL encoding

  • Basic input validation

  • Safe parameter manipulation

  • Linux, Windows & macOS practical exercises

  • Building a structured web-security testing workflow

🔐 LEARN → INTERCEPT → ANALYZE → TEST SAFELY → UNDERSTAND → SECURE.

No comments:

Post a Comment

Bottom Ad [Post Page]

rrkksinha.