Nội dung text Silabus Kursus Web Application Penetration Testing Fundamental & Bug Bounty.pdf
Web Apps Pentesting Fundamental & Bug Bounty - Syllabus 1 WEB APPS PENETRATION TESTING FUNDAMENTAL & BUG BOUNTY Pada kursus ini, peserta akan diajarkan materi dasar web application penetration testing & bug bounty hunting secara komprehensif. Materi pembasahan pada kursus meliputi materi pengenalan penetration testing, web application technology, persiapan lab & instalasi lab, metodologi penetration testing pada aplikasi web, framework OWASP, jenis-jenis kerentanan pada aplikasi web, eskploitasi kerentanan, hingga proses pembuatan laporan hasil penetration testing. Pertemuan Materi Pembahasan Pertemuan 1: Pengenalan penetration testing & persiapan lab Pengenalan penetration testing ▪ Definisi dan tujuan ▪ Peran dan tanggung jawab seorang penetration tester ▪ Jenis-jenis penetration testing ▪ Pentingnya penetration testing pada aplikasi web Metodologi dan standar framework dalam penetration testing ▪ Metodologi penetration testing ▪ OWASP Web Top 10 ▪ NIST SP 800-115 ▪ PTES (Penetration Testing Execution Standard) Lab – Setup lab untuk web penetration testing ▪ Menyiapkan lingkungan virtualisasi (VirtualBox, VMware) ▪ Instalasi sistem operasi dan tools pen testing (Kali Linux) ▪ Instalasi vulnerable web application (Vulnlab) Pertemuan 2: Dasar-dasar aplikasi web dan arsitekturnya Memahami dasar-dasar cara kerja aplikasi web dan arsitekturnya ▪ Cara kerja aplikasi web: client- server model ▪ Protokol HTTP/HTTPS & proxy ▪ Cara kerja session dan cookie ▪ Arsitektur aplikasi web: frontend, backend, & database Lab – Praktek menggunakan burpsuite ▪ Cara melakukan intercept request dan response dengan burpsuite ▪ Pengenalan fitur-fitur pada burpsuite ▪ Menggunakan burpsuite untuk menganalisis request dan response
Web Apps Pentesting Fundamental & Bug Bounty - Syllabus 2 Pertemuan 3: Information gathering & enumeration pada aplikasi web Mempelajari teknik-teknik information gathering pada target ▪ Tujuan melakukan information gathering pada aplikasi web ▪ Perbedaan passive vs active information gathering ▪ Jenis-jenis tools untuk information gathering: WHOIS, Dig, Nslookup, Google Dork, Shodan, Nmap, Wappalyzer, Whatweb, CMSeek Mempelajari teknik-teknik enumeration pada aplikasi web ▪ Tujuan melakukan enumeration pada aplikasi web ▪ Identifikasi layanan, versi dan teknologi pada aplikasi web ▪ Pengenalan tools enumeration: Dirb, Dirsearch, Subfinder, Amass, ParamSpider, WPScan Lab – Praktek melakukan information gathering & enumeration ▪ Penggunaan WHOIS dan Dig untuk informasi domain ▪ Penggunaan Nmap untuk scanning port dan services ▪ Penggunaan Whatweb & Wappalyzer untuk identifikasi teknologi pada aplikasi web ▪ Subdomain enumeration menggunakan Google Dork (Passive) ▪ Subdomain enumeration menggunakan Subfinder (Active) ▪ Check active URL dengan HTTPX ▪ Asset discovery menggunakan Shodan / Censys, dan Amass ▪ File & directory enumeration dengan Dirb, Dirsearch, Ffuf ▪ Parameter crawling dengan ParamSpider Pertemuan 4: Vulnerability scanning & analysis Mempelajari teknik dan metode untuk identifikasi kerentanan ▪ Memahami kerentanan umum pada aplikasi web ▪ Common Vulnerabilities and Exposures (CVE) ▪ Common Weakness Enumeration (CWE) ▪ Mengenal jenis-jenis tools untuk vulnerability scanning: Nmap NSE, Nikto, Nuclei, Acunetix, Burpsuite Professional
Web Apps Pentesting Fundamental & Bug Bounty - Syllabus 3 Lab – Praktek melakukan vulnerability scanning & analysis ▪ Mencari public exploit dengan SearchSploit & ExploitDB ▪ Melakukan vulnerability scanning dengan Nmap NSE, Nikto, Nuclei, Acunetix, Burpsuite Professional ▪ Menentukan entry point untuk percobaan eksploitasi dan gaining access Pertemuan 5: Broken authentication & insecure authorization Memahami proses authentication pada aplikasi web & kerentanannya ▪ Pengenalan authentication pada aplikasi web ▪ Mengenal jenis-jenis kerentanan pada proses authentication Lab – Broken authentication attack ▪ Brute-force attack ▪ SQL injection authentication bypass (login) ▪ Two-factor authentication (2FA) bypass ▪ Captcha bypass Memahami proses authorization pada aplikasi web & kerentanannya ▪ Pengenalan authorization pada aplikasi web ▪ Mengenal jenis-jenis kerentanan pada authorization Lab – Insecure authorization attack ▪ Broken access control ▪ Insecure direct object reference (IDOR) ▪ Local file inclusion (LFI) ▪ Directory traversal Pertemuan 6: Information disclosure & sensitive data exposure Memahami kerentanan information disclosure pada aplikasi web ▪ Mengenal kerentanan information disclosure pada aplikasi web dan dampaknya ▪ Jenis-jenis kerentanan information disclosure Lab – Mengidentifikasi kerentanan information disclosure. ▪ Identifikasi server banner pada HTTP header ▪ Detailed errror message: Path, SQL query error, dll ▪ Directory listing ▪ Backup file Memahami kerentanan sensitive data exposure pada aplikasi web ▪ Mengenal kerentanan sensitive data exposure pada aplikasi web dan dampaknya ▪ Jenis-jenis kerentanan sensitive data exposure Lab – Mengidentifikasi kerentanan sensitive data exposure ▪ Sensitive data in URLs ▪ Log file exposure
Web Apps Pentesting Fundamental & Bug Bounty - Syllabus 4 ▪ Personally identifiable information (PII) leakage ▪ Configuration files (.env file) ▪ Git repository leakage Pertemuan 7: Injection attack – SQL injection, XSS, SSTI Memahami teknik serangan SQL injection pada aplikasi web + lab praktek ▪ Mengenal kerentanan SQL injection pada aplikasi web ▪ Mengidentifikasi kerentanan SQL injection ▪ Eksploitasi kerentanan SQL injection boolean-based ▪ Eksploitasi kerentanan SQL injection error-based ▪ Eksploitasi kerentanan SQL injection time-based ▪ Praktek SQL injection attack menggunakan SQLMap Memahami teknik serangan Cross-Site Scripting (XSS) pada aplikasi web + lab praktek ▪ Mengenal kerentanan XSS (Cross-Site Scripting) ▪ Eksploitasi kerentanan XSS reflected ▪ Eksploitasi kerentanan XSS stored ▪ Eksploitasi kerentanan XSS DOM-based ▪ Eksploitasi kerentanan XSS secara otomatis dengan ParamSpider + Dalfox Memahami teknik serangan Server-Side Template Injection (SSTI) pada aplikasi web + lab praktek ▪ Mengenal kerentanan server-side template injection (SSTI) ▪ Mengidentifikasi kerentanan server-side template injection (SSTI) ▪ Eksploitasi kerentanan server- side template injection (SSTI) Pertemuan 8: Unrestricted file upload, remote code execution (RCE), command injection + reporting Memahami kerentanan unrestricted file upload pada aplikasi web + lab praktek ▪ Mengenal kerentanan unrestricted file upload ▪ Praktek eksploitasi kerentanan unrestricted file upload (file type bypass) ▪ Praktek eksploitasi kerentanan unrestricted file upload (MIME type bypass) ▪ Praktek eksploitasi kerentanan unrestricted file upload (magic header bypass)