Dev Tools

Chrome DevTools is your primary weapon for client-side hacking. Here are the panels you need to know.

Console

Elements
Console
Sources
Network
> document.cookie
'session=abc123; token=xyz789'
> location.origin
'https://target.com'
> alert('XSS')
undefined

Elements

Elements
Console
Sources
Network
<html>
<body>
<div id="app">
<h1>Dashboard</h1>
<div id="content">
Event Listeners
▼ message
handler: f(event)
app.js:42

Sources

Elements
Console
Sources
Network
▼ top
▼ target.com
index.html
app.js
utils.js
style.css
▼ cdn.example.com
vendor.min.js
38 function handleInput(val) {
39 var q = val.trim();
40 el.innerHTML = q; // ← sink!
41 }

Break Points, Log Points, Conditional Breakpoints

app.js - Breakpoint Types
var input = location.hash.slice(1);          // 🔵 Breakpoint
var decoded = decodeURIComponent(input);   // 🟪 Log Point
element.innerHTML = decoded;              // 🟠 Conditional

Debugging Operations


Minified JavaScript

Minified JS
var a=function(b){var c=b.split("&"),d={};for(var e=0;e<c.length;e++){var f=c[e].split("=");d[f[0]]=decodeURIComponent(f[1]||"")}return d},g=a(location.search.slice(1));document.getElementById("out").innerHTML=g.q;

Exercise: Breakpoint Debugging

Launch Exercise → Next: Methodology