Reflected File Download Zafiyeti ve Burp Plugin Aracılığı ile Tespiti

Benzer belgeler
Boğaziçi Üniversitesi Bilgi İşlem Merkezi. Web Yönetimi Birimi. Drupal Kullanım Kılavuzu

NicProxy Registrar AWBS Modül Kurulumu Versiyon 1.0

İSTANBUL KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ KULLANIM KLAVUZU KEMERBURGAZ ÜNİVERSİTESİ İÇERİK YÖNETİM SİSTEMİ

BİLGİSAYAR UYGULAMALARI Şırnak Üniversitesi Mühendislik Fakültesi Güz Dönemi Arş.Gör. Eren DEMİR ve Arş.Gör. Veysel KIŞ (

İSTANBUL ÜNİVERSİTESİ. Bütünleşik Kalite Yönetim Sistemi İç Tetkik Kılavuzu

UZAKTAN EĞİTİM YÖNETİM SİSTEMİ (MMYO)EĞİTMEN YARDIM KILAVUZU

MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ MUWİS. Web İçerik Sistemi. Bilgi İşlem Daire Başkanlığı-WEB GRUBU

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

SIMAN KULLANIM KILAVUZU

Web Uygulama Güvenliği Kontrol Listesi 2010

IPACK LADDER. Arayüz Dökümantasyonu

MAC OS X E- İMZA KURULUMU VE ÖRNEK E-İMZA ATMA İŞLEMLERİ 1. Kullanılan MAC Bilgisayar, MAC OS X El Capitan ve üzeri bir sürüm ise csrutil disable

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

DUYURU PANELİ KULLANMA YÖNERGESİ

VET ON KULLANIM KLAVUZU

20 Mayıs İlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. İlgili Modül/ler : Muhasebe IV

Programın Tanıtımı

SIMMAG Kullanım Kılavuzu. Adem Ayhan Karmış. Ana Ekran

İSTANBUL ÜNİVERSİTESİ. Kalite Yönetim Sistemi Kullanım Kılavuzu

MENÜ AYARLAMA 1. MENÜ AYARLAMA. [X] [X] Standard. [X] [X] Yeni Fonksiyon

PROGRAMLAMA DERSİ 1. İNTERNET

Okul Web Sitesi Yönetim Paneli Kullanımı

İMZAGER PROGRAMI İLE UZUN DÖNEM İMZA TİPİNDE ELEKTRONİK İMZALI BELGE OLUŞTURMA

Primavera ve Doküman Yönetim Sistemi


Arayüz Geliştirme Dokümantasyonu

NACA PROFİL AİLE GEOMETRİSİ HESAP PROGRAMI KULLANMA KILAVUZU

Web Labaratuar Modulu

<html> <head> <title>sayfa Başlığı</title> </head> <body> Bu benim ilk sayfam <b>bu metin koyu</b> </body> </html>

BM-209 Nesne Yönelimli Programlama. Yrd. Doç. Dr. İbrahim Alper Doğru Gazi Üniversitesi Teknoloji Fakültesi Bilgisayar Mühendisliği Bölümü

02 Temmuz İlgili Versiyon/lar: ETA:SQL, ETA:V.8-SQL. İlgili Modül/ler: Muhasebe IV

MPLAB IDE v7.60 PROGRAMI KULLANIMI

Dijital Varlık Yönetimi Yardım Dokümanı

Oturum Öncesi Tanımlı Oturum Kimliği Çerezi Açığı Gökhan

4 Front Page Sayfası Özellikleri

T.C. İSTANBUL ÜNİVERSİTESİ HASAN ALİ YÜCEL EĞİTİM FAKÜLTESİ PEDAGOJİK FORMASYON BAŞVURU KILAVUZU

AKINSOFT FilterPlus 2

Berqnet Sürüm Notları Sürüm 4.1.0

LST TIPON KURULUM KILAVUZU

Başlangıç; Sayfa 1. Sanal pos tanımlandığında üye numarası admin kullanıcı adı parolası ile Garanti Bankasından tarafınıza iletilecektir.

Programlama Yazılımı ile Web Sitesi Oluşturma

CJ1W-PRM21 ile GRT1- PRT Uzak I/O Modülüne Bağlanmak (Profibus)

E-Netsis.Net Yenilikleri

HALK SAĞLIĞI LABORATUARI WEB MODÜLÜ

Anket Yönetimi. 1. Anket İçerik Grup Tanımlama

AYDES PROJESİ MESAJ KUTUSU EĞİTİM DOKÜMANI

Kaynak Kodlardan Derleme. Turquaz Muhasebe. Versiyon 0.2. Hüseyin Ergün. 26 Mart 2005

Java Programlamaya Giriş

BMT 202 Web Tasarımı Bahar Dönemi. Yük. Müh. Köksal GÜNDOĞDU 1

Smoothwall URL Filter Kurulumu

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

Program istasyon yaratırken onunla aynı isimde bir dizin yaratır ve bu dizinin içine çalışması için gerekli dosyları kopyalar:

CJ1W-PRM21 MX2 INVERTER HABERLEŞMESİ

Okul Web Sitesi Yönetim Paneli Kullanımı

OKUL HABER EKLEME MODÜLÜ TANITIM DOSYASI. Okul haberlerinizi ilçemiz web sitesinde yayınlayabilmek için aşağıdaki adımları uygulamanız gerekmektedir.

XSS Exploitation via CHEF

YENİ NESİL 720 MUHTASAR VE PRİM HİZMET BEYANNAMESİ DEĞİŞİKLİKLERİ

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

Ecat 8. Hakbim Bilgi İşlem A.Ş. Versiyon

MUĞLA SITKI KOÇMAN ÜNİVERSİTESİ. ECTS Info Pack. ECTS Bilgi Paketi Çalışmaları. Bilgi İşlem Daire Başkanlığı YAZILIM-WEB GRUBU

HSancak Nesne Tabanlı Programlama I Ders Notları

Fırat Üniversitesi Hastanesi Dinamik Web Sayfası

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Kullanım Kılavuzu Milli Eğitim Bakanlığı 2010

DURMAZSOFT ERP KURULUM VE YAPILANDIRMA

ORSOFT 5.22 AMERİKAN KÜLTÜR DERNEĞİ DİL OKULLARI YÖNETİM BİLGİ SİSTEMİ KURULUMU

NicProxy Registrar WHMCS Modül Kurulumu Versiyon 1.0

e-fatura Başvuru Açıklamalar

Çözüm Bilgisayar. Çözüm İntSite

Birim Faaliyet Raporu Hazırlama Kılavuzu

1 Çevre ve Orman Bakanlığı Seveso Bildirim Sistemi Kılavuzu

OPERATÖR SERVİSLERİ. Kullanıcı Kılavuzu

Q-Biz İş Zekası 5.1. Versiyon Yenilikleri

Metin İşlemleri, Semboller

Tomcat Uygulama Sunucusunun Kurulumu. İlk olarak adresine gidiyoruz.

VERİ GÜVENLİĞİ. Web Uygulamaları Güvenliği. Özer Çelik Matematik-Bilgisayar Bölümü

DOKÜMAN YÖNETİM SİSTEMİ KULLANIMI GİDEN EVRAK

Üst Düzey Programlama

2. HTML Temel Etiketleri

E - YENİLİKLER BÜLTENİ

Vega Ayarları. Vega Programının kurulu olduğu veritabanı ve web servisi için bağlantı ayarlarının yapıldığı menüdür.

Yeni kullanıcı hesabı açmak ya da varolan hesaplar üzerinde düzenlemeler yapmak.

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

MERAK MAIL SERVER ACTIVE DIRECTORY ENTEGRASYONU

ASP.NET ile Bir Web Sitesi Oluşturma

BİLGİ İŞLEM DAİRE BAŞKANLIĞI WEB GÜNCELLEME İŞLEMLERİ KILAVUZU

VİOP SİMÜLASYONU KULLANICI REHBERİ

Network üzerinde MATLAB kurulması

MEKAN TAKİP UYGULAMASI

4. Bağlantı (Köprü) Oluşturma

AYDES PROJESİ HIZLI RAPORLAR FORMU EĞİTİM DOKÜMANI

GĐRĐŞ. 1 Nisan 2009 tarihinde BDP programının yeni bir sürümü yayınlanmış ve bu sürümde yapılan değişikliklere

Medisoft E-Reçete Bildirimleri Kullanım Kılavuzu

Web Programlama Kursu

Şekil 1- CryptoLocker Tarafından Kullanıcılara Gönderilen Eposta

27 Kasım Ekran 1: ETA:SQL Yazılım Güncelleme Uygulaması

ARLAB ARaştırma LABoratuvar Projesi Kullanım Kılavuzu

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir?

KDV Beyannamesinin ekinde verilen Kısmı Tevkifat Uygulaması Kapsamındaki İşlemlere Ait Bildirim, Muhasebe IV modülünden hazırlanabilir.

Transkript:

Reflected File Download Zafiyeti ve Burp Plugin Aracılığı ile Tespiti Giriş Reflected File Download zafiyeti 2014 yılında Oren Hafif tarafından keşfedilen ve isimlendirilen web tabanlı bir zafiyet türüdür. Bu zafiyet 2014 yılında düzenlenen BlackHat Europe etkinliğinde Reflected File Download a New Web Attack Vector sunumu ile tanıtılmıştır. Bu yazıda Zafiyetin etkisi Zafiyetin oluşması için gereksinimler Manuel analiz teknikleri ile zafiyetin keşfi Zafiyetin giderilmesi Enforsec sızma testi ekibi olarak geliştirdiğimiz Burp Plugin aracılığı ile keşfi konu alınacaktır. Zafiyetin Etkisi Reflected File Download zafiyetinin doğru şekilde istismar edilmesi sonucu saldırganların zararlı çalıştırılabilir dosyalarını (bat, cmd, vbs, vbe ve hta dosyaları gibi) google.com ve bing.com gibi güvenilir domain lere yüklemişler gibi gösterebilmesi ve bu sayede hedef aldıkları kullanıcıların bu dosyaları indirmelerini sağlamaları mümkündür. Saldırganların zafiyet bulunan web sayfalarının güvenini kullanarak zararlı dosyaları hedef aldıkları kullanıcılara bir URL tıklaması ile yükletmesi ve bilgisayarlarının tamamen ele geçirilmesi mümkündür. Buna ek olarak Oren Hafif in Reflected File Download a New Web Attack Vector sunumunda da gösterdiği üzere hedef alınan kullanıcılara ait internet tarayıcılarının same-origin-policy özelliği kapatılarak, internet tarayıcılarında tanımlı bulunan diğer web sayfalarına ait (gmail.com gibi) Cookie ler ve tanımlı bulunan kayıtlı parolalar ele geçirilebilmektedir. Reflected File Download Zafiyetinin Oluşması için gereksinimler Reflected File Download zafiyetinin oluşması için aşağıdaki gereksinimler karşılanmalıdır. 1- Kullanıcı girdisinin web uygulamasında içerik olarak yansıtılması a. Shell komutlarının çalışabilmesi için saldırgan a ait girdinin, bulunduğu veri alanının dışına (çoğu zaman string) çıkabilmesi ve kullanıcıya yansıtılıyor olması gereklidir. b. Saldırgan a ait girdilerde & ve gibi komut eklenen karakterlere izin verilmesi gerekmektedir 2- Dosya isminin kontrol edilmesi ve çalıştırılabilir dosyanın indirilmeye zorlanması Bunun gerçekleştirilebilmesi için 2 yöntem mevcuttur; a. Content-Disposition HTTP başlığı içerisinde filename özelliği gelmiyor ise indirilen dosyanın uzantısı URL den alınmaktadır. Web sayfalarının yapısını ve akışını bozmadan uzantısının değiştirilebildiği çeşitli durumlar vardır.

i. Web sayfası/api nin URL sonrası path leri işleme almaması. Örneğin /services/search?callback=enforsec servisinin /services/search/update.bat?callback=enforsec URL i ile de kullanılabiliyor olması. ii. Web sayfası/api nin URL de ; karakteri sonrası karakterleri işleme almaması. Örneğin /services/search?callback=enforsec servisinin /services/search;/update.bat?callback=enforsec URL I ile de kullanılabiliyor olması. Safari hariç tüm internet tarayıcılarda bu zafiyeti test etmek için /services/search;/update.bat;/update.bat URL i kullanılmalıdır. Bir örnek vermek gerekirse, Oren Hafif, sunumunda belirttiği üzere google.com üzerinde Content-Disposition HTTP başlığının filename özelliği olmadan kullanılmadığını görmüş ve Reflected File Download zafiyetini keşfetmiştir. İlgili BlackHat Europe 2014 sunumunda (https://www.youtube.com/watch?v=dl1bjunk8v4) gösterildiği üzere bir sosyal medya solucanına çevrilebilen Reflected File Download zafiyetinin tespitine ait ekran görüntüsü aşağıdaki gibidir; https://www.blackhat.com/docs/eu-14/materials/eu-14-hafif-reflected-file-download-a-new-web-attack-vector.pdf b. Content-Disposition HTTP başlığının olmadığı durumlarda, zararlı web sayfasında kullanıcının tıklayacağı linkin a tag i içerisinde olması ve chrome/opera internet tarayıcıları tarafından desteklenen download tag inin kullanılası gerekmektedir. Örnek zararlı HTML kodları aşağıdaki gibidir; <a download href="http://hedef.com/services/search;/update.bat;"> https://hedef.com/services/search;/update.bat;</a> <a href="http://hedef.com/services/search;/update.bat;" download="update.bat" onclick="return false">download</a> Bknz: https://www.davidsopas.com/reflected-file-download-cheat-sheet/ Aşağıdaki grafik de hangi durumlarda zafiyetin oluşacağı anlatılmıştır.

Bknz: https://www.blackhat.com/docs/eu-14/materials/eu-14-hafif-reflected-file-download-a-new-web-attack-vector.pdf Manüel analiz teknikleri ile zafiyetin keşfi 1. İlk adım olarak uygulamaya girilen girdilerin (input) web sayfası/api içerisinde kullanıcıya yansıtıldığı noktalar tespit edilmelidir. Bu noktaların sıklıkla bulunduğu durumlar aşağıdaki gibidir; a. Siteler arası betik çalıştırma (XSS) zafiyetine benzer şekilde bu adımda istek parametre değer/isimleri b. Uygulama hata sayfaları ve hata içerikleri c. Yerleşik siteler arası betik çalıştırma (Stored XSS) zafiyetine benzer şekilde sistem üzerinde tutulan ve kullanıcı kaynaklı veriler. Örneğin saldırgan forum benzeri bir web sayfasına kayıt olurken kullanıcı isminde bu zafiyeti tetikleyecek bir değer girebilir ve bu değer saldırgan a ait profil sayfasında gözükecektir. Bu durumda saldırgan kendi profil sayfası ile Reflected File Download zafiyetini tetikleyebilir. d. JSONP callback değerlerine özellikle dikkat edilmelidir. JSONP callback değerleri uygulama üzerinde gezinirken (spider) keşfedilebilmektedir fakat bazı callback parametreleri API/web sayfalarında gizli olarak bulunabilmektedir. Bu sayfalara ve servislere parametreler eklenerek callback özelliğinin olup olmadığı tespit edilmelidir. Örneğin https://www.hedef.com/haberler/haber1?baslik=test URL inde bulunan baslik parametresi saldırgan tarafından kontrol edilebilmektedir. Bu parametre değeri uygulama içeriği olarak link e tıklayan kullanıcılara gösterilmektedir. HTTP cevabına ait body değeri aşağıdaki gibidir; {"id":"haber1", "baslik":"test"} 2. baslik parametresi ile alınan değer değerleri arasında bir kelime (string) formatında kullanılmaktadır, bu değer komut satırı komutu içerisinde kullanılıyor olsa dahi bir kelime (string) olarak görülecek ve çalıştırılamayacaktır. Bu değerin çalıştırılabilir hale gelip gelmediğini kontrol etmek adına baslik parametresine aşağıdakine benzer bir istek yazılmalıdır.

https://www.hedef.com/haberler/haber1?baslik=test Reflected File Download zafiyetinin bulunduğu bir sistemde beklenen HTTP cevabına ait body değeri aşağıdaki şekilde olmalıdır; {"id":"haber1", "baslik":"test\ "} Bu değer uygulama içerisinde hala kelime (string) olarak gözükecektir fakat bu satırlar komut satırında komut olarak kullanılabildiğinde (bu kısmı bir sonraki başlıkta inceleyeceğiz) aşağıdaki örnek isteğe ait cevap çalıştırılabilir bir komut olacak ve hesap makinesi yazılımını çalıştırabilecektir. Örnek URL, HTTP cevabına ait body ve ekran görüntüsü aşağıdaki gibidir; URL; https://www.hedef.com/haberler/haber1?baslik=test calc HTTP cevabına ait body; {"id":"haber1", "baslik":"test\ calc "} Ekran görüntüsü; 3. Bu aşamada dosyanın indirilmeye zorlandığını varsayabiliriz, testler esnasına bu adımdaki amaç dosya uzantısını çalıştırılabilir bir format ile değiştirilebilir hale getirmek ve bununla beraber uygulamanın işleyişini bozmamak olacaktır. Bunun için aşağıdakilere benzer yapıda URL formatları denenmelidir. Orjinal URL https://hedefsite.com/haberler/haber1?baslik=test

Test edilecek URL formatları Zafiyetinin Giderilmesi https://hedefsite.com/haberler/haber1.bat?baslik= calc https://hedefsite.com/haberler/haber1;update.bat?baslik= calc https://hedefsite.com/haberler/haber1/update.bat?baslik= calc https://hedefsite.com/haberler/haber1;/update.bat?baslik= calc https://hedefsite.com/haberler/haber1;/update.bat;?baslik= calc Bknz: https://www.davidsopas.com/reflected-file-download-cheat-sheet/ Zafiyetin giderilmesi adına uygulanması beklenen 4 yöntem vardır. Bu yöntemlerden uygulama yapısına uygun olanlar kullanılmalıdır. 1. Callback benzeri kullanıcıdan veri alan ve bu veriyi uygulama çıktısına yansıtan parametrelerin değerleri bir beyaz listeden geçirilmelidir. Örneğin bu parametre gelmesi beklenen değerler sadece harften oluşuyor ise harf haricindeki karakterler kabul edilmemelidir. Özellikle, ve & değerlerinin kullanımı engellenmelidir. Bu değerler engellenemiyorsa eğer ekranda gösterilirken encode edilmelidir. Örneğin değeri \x22 veya \u022 değeri ile değiştirilmelidir. 2. Content-Disposition HTTP başlığı kullanılacak ise eğer mutlaka filename özelliği eklenmeli ve bu değer boş bırakılmamalıdır. Google.com üzerinde Oren Hafif tarafından bulunan zafiyet bu yöntem ile giderilmiştir. Örnek HTTP cevabı aşağıdaki gibidir; HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8 Date: Fri, 09 Dec 2016 06:07:30 GMT Expires: -1 Cache-Control: private, max-age=0 Content-Disposition: attachment; filename="f.txt" Server: gws X-XSS-Protection: 1; mode=block X-Frame-Options: SAMEORIGIN Alt-Svc: quic=":443"; ma=2592000; v="35,34" Connection: close Content-Length: 61834 3. Uygulama normalinde kullanılan URL lerin arkasına veri eklenmesine izin verilmemelidir. Bu gibi durumlarda uygulama HTTP 404 cevabı vermeye zorlanmalıdır. 4. HTTP cevap başlıkları kullanılarak internet tarayıcılarının HTTP cevaplarına bakarak uygulama içeriği hakkında tahminde bulunmasının önüne geçilmelidir. Bu sayede uygulamaların HTTP cevabını çalıştırılabilir formatta görüp indirmesi engellenecektir. Örnek HTTP Başlığı aşağıdaki gibidir; X-Content-Type-Options: nosniff

Enforsec Tarafından Geliştirilen Burp Plugin i Aracılığı ile Zafiyetin Keşfi 1. Burp Plugin inin yüklenmesi Uygulama kaynak kodları https://github.com/onurkarasalihoglu/reflected-file-download- Checker-BurpSuite-Plugin.git sayfası üzerinden indirildikten sonra 1.1. Burp Suite ekranında Extender tab ına gelinir. 1.2. Extender tab ı içerisinde bulunan Extensions tab ı açılır. 1.3. Sol tarafta bulunan Add butonuna tıklanır, Extension Details bölünden BurpExtender/dist dizininde bulunan ilgili jar dosyası seçilir. 1.4. Reflected File Download Checker plugin inin doğru şekilde yüklendiği doğrulanır. 2. Burp Plugin inin kullanımı Reflected File Download Checker plugin i bir scanner modülü gibi çalışır. Beklenen şartlar sağlandığında Burp Suite in mevcut bulguları tespit etmeye çalışması gibi zafiyetin tespiti için denemeler yapar ve zafiyet bulunduğunda Scanner ekranına eklenir. Reflected File

Download Checker plugin i hem passive scan hem de active scan esnasında çalışmaktadır. Örnek bir zafiyet e ait ekran görüntüleri aşağıdaki gibidir; Active Scan esnasında bulunan zafiyetin ekran görüntüsü; Passive Scan esnasında bulunan zafiyetin ekran görüntüsü; Active Scan ile bulunan Reflected File Download bulgusunun içeriği;

Plugin doğru şekilde yüklendikten sonra Burp Suite ekranında sağ üst köşede RFD Checker Options tab ı aşağıdaki şekilde belirir. Bu tab içerisinde RFD Parameter, RFD Payloads ve About tabları bulunmaktadır. RFD Parameter tabında plugin in passive scan esnasında varlığını kontrol ettiği, active scan esnasında da test edilen web sayfasına parametre olarak eklediği parametre isimleri bulunmaktadır. Bu parametre isimlerinin sayısının arttırılması için ilgili metin kutusunun (text box) altına ekleme yapılmalıdır. RFD Payload dizininde ilgili parametreler üzerinde Reflected File Download zafiyetinin tespit edilmesi için kullanılan ve uygulama HTTP cevabında yansıması da aratılacak kelimeler (string) bulunmaktadır. Bu verilere yeni veri eklemek için ilgili metin kutusunun altına ekleme yapılmalıdır. About tabında ise Plugin e ait geliştirici kontak bilgileri ve mevcut plugin in versiyonu bulunmaktadır. 3. Bup Plugin inin alt yapısı ve kod güncelleme/derleme Plugin in çalışma şeması aşağıdaki şekildedir; Passive Scan Esnasında (dopassivescan) - Content-Type HTTP başlığının "json" veya "javascript" anahtar kelimelerini içerip içermediği kontrol edilir.

Eğer içeriyor ise callback benzeri parametrelerin varlığı kontrol edilir, bu parametrelerin listesi grafik ara yüzündeki RFD Parameters tab ından alınmaktadır. Eğer bu parametre isimlerinden herhangi biri kullanılmış ise "Potential RFD Issue Detected" zafiyeti bulgular tablosuna eklenir. Active Scan Esnasında (doactivescan) - Eğer uygulama grafik ara yüzündeki RFD Parameters tab ından alınan parametreleri içeriyor ise RFD Payloads kısmında bulunan değerler HTTP parametre değeri olarak atanır ve aynı parametre değerlerinin uygulama cevabında gösterilip gösterilmediği kontrol edilir. - Eğer uygulama Content-Type HTTP başlığında json veya javascript değerlerini içeriyor ise fakat RFD Parameters tabında bulunan hiç bir parametre ismi ilgili istekde kullanılmamış ise bu parametre isimlerini RFD Payloads tabında bulunan kelimeler (string) ile ilgili isteğe eklenir ve HTTP cevabında varlığı kontrol edilir. Var ise Reflected File Download bulgusu zafiyetler tablosuna eklenir. Uygulama kodu üzerinde değişiklik yapılmak istenir ise mevcut proje Net Beans yazılımı aracığılığı ile açılır ve BurpExtender.java dosyasında istenilen değişiklikler yapılır. İstenilen değişiklikler yapıldıktan sonra aşağıdaki ekran görüntüsünde gösterildiği şekilde proje derlenir. Proje doğru şekilde derlendiğinde Burp Suite üzerinden yüklenmesi gereken jar dosyası \BurpExtender\dist dizininde oluşacaktır.

Referanslar https://www.blackhat.com/docs/eu-14/materials/eu-14-hafif-reflected-file-download-a-new-web-attack- Vector.pdf https://www.davidsopas.com/reflected-file-download-cheat-sheet/