İPUCU

Capture The Flag Vulnerable VM Walkthrough & Capture The Flag Writeup Yazabileceğiniz Bölüm

Seçenekler

bWAPP Çözümleri ~ Anka Tim

18-05-2019 00:49
#1
The CrueL - ait Kullanıcı Resmi (Avatar)
Sosyal Medya Tim Lider Yardımcısı
Üyelik tarihi:
09/2013
Nereden:
Ahıska
Mesajlar:
4.348
Teşekkür (Etti):
3946
Teşekkür (Aldı):
2195
Konular:
280
Ticaret:
(0) %


Bu konu altında bWAPP'in çözümleri paylaşılacaktır.


bWAPP (Buggy Web Application) Nedir?
bWAPP, web uygulama güvenliğinde kendini geliştirmek isteyenler için hazırlanmış ücretsiz ve açık kaynak bir pentest/hacking test laboratuvarıdır. OWASP tarafından belirlenen en kritik güvenlik açıklarını hem saldırı hem de savunma yönünden öğrenmenize yardımcı olur.
bWAPP'de üç zorluk seviyesi bulunuyor. Bunlar; low, medium ve high.

DVWA'den daha kapsamlıdır ve çok daha fazla zaafiyeti barındırır. Daha önce açtığımız DVWA Çözümleri konusana göz atabilirsiniz.

DVWA Çözümleri ~ Anka Tim


bWAPP Hangi Zaafiyetleri Barındırıyor?
Kod:
A1 -  Injection

HTML Injection - Reflected (GET)
HTML Injection - Reflected (POST)
HTML Injection - Reflected (Current URL)
HTML Injection - Stored (Blog)
iFrame Injection
LDAP Injection (Search)
Mail Header Injection (SMTP)
OS Command Injection
OS Command Injection - Blind
PHP Code Injection
Server-Side Includes (SSI) Injection
SQL Injection (GET/Search)
SQL Injection (GET/Select)
SQL Injection (POST/Search)
SQL Injection (POST/Select)
SQL Injection (AJAX/JSON/jQuery)
SQL Injection (CAPTCHA)
SQL Injection (Login Form/Hero)
SQL Injection (Login Form/User)
SQL Injection (SQLite)
SQL Injection (Drupal)
SQL Injection - Stored (Blog)
SQL Injection - Stored (SQLite)
SQL Injection - Stored (User-Agent)
SQL Injection - Stored (XML)
SQL Injection - Blind - Boolean-Based
SQL Injection - Blind - Time-Based
SQL Injection - Blind (SQLite)
SQL Injection - Blind (Web Services/SOAP)
XML/XPath Injection (Login Form)
XML/XPath Injection (Search)


A2 - Broken Auth. & Session Mgmt.

Broken Authentication - CAPTCHA Bypassing
Broken Authentication - Forgotten Function
Broken Authentication - Insecure Login Forms
Broken Authentication - Logout Management
Broken Authentication - Password Attacks
Broken Authentication - Weak Passwords
Session Management - Administrative Portals
Session Management - Cookies (HTTPOnly)
Session Management - Cookies (Secure)
Session Management - Session ID in URL
Session Management - Strong Sessions


A3 - Cross-Site Scripting (XSS)

Cross-Site Scripting - Reflected (GET)
Cross-Site Scripting - Reflected (POST)
Cross-Site Scripting - Reflected (JSON)
Cross-Site Scripting - Reflected (AJAX/JSON)
Cross-Site Scripting - Reflected (AJAX/XML)
Cross-Site Scripting - Reflected (Back Button)
Cross-Site Scripting - Reflected (Custom Header)
Cross-Site Scripting - Reflected (Eval)</option>
Cross-Site Scripting - Reflected (HREF)</option>
Cross-Site Scripting - Reflected (Login Form)
Cross-Site Scripting - Reflected (phpMyAdmin)
Cross-Site Scripting - Reflected (PHP_SELF)
Cross-Site Scripting - Reflected (Referer)
Cross-Site Scripting - Reflected (User-Agent)
Cross-Site Scripting - Stored (Blog)
Cross-Site Scripting - Stored (Change Secret)
Cross-Site Scripting - Stored (Cookies)
Cross-Site Scripting - Stored (SQLiteManager)
Cross-Site Scripting - Stored (User-Agent)


A4 - Insecure Direct Object References 

Insecure DOR (Change Secret)
Insecure DOR (Reset Secret)
Insecure DOR (Order Tickets)
A5 - Security Misconfiguration
Arbitrary File Access (Samba)
Cross-Domain Policy File (Flash)
Cross-Origin Resource Sharing (AJAX)
Cross-Site Tracing (XST)
Denial-of-Service (Large Chunk Size)
Denial-of-Service (Slow HTTP DoS)
Denial-of-Service (SSL-Exhaustion)
Denial-of-Service (XML Bomb)
Insecure FTP Configuration
Insecure SNMP Configuration
Insecure WebDAV Configuration
Local Privilege Escalation (sendpage)
Local Privilege Escalation (udev)
Man-in-the-Middle Attack (HTTP)
Man-in-the-Middle Attack (SMTP)
Old/Backup & Unreferenced Files
Robots File


A6 - Sensitive Data Exposure 

Base64 Encoding (Secret)
BEAST/CRIME/BREACH Attacks
Clear Text HTTP (Credentials)
Heartbleed Vulnerability
Host Header Attack (Reset Poisoning)
HTML5 Web Storage (Secret)
POODLE Vulnerability
SSL 2.0 Deprecated Protocol
Text Files (Accounts)


A7 - Missing Functional Level Access Control 

Directory Traversal - Directories
Directory Traversal - Files
Host Header Attack (Cache Poisoning)
Host Header Attack (Reset Poisoning)
Local File Inclusion (SQLiteManager)
Remote & Local File Inclusion (RFI/LFI)
Restrict Device Access
Restrict Folder Access
Server Side Request Forgery (SSRF)
XML External Entity Attacks (XXE)


A8 - Cross-Site Request Forgery (CSRF)

Cross-Site Request Forgery (Change Password)
Cross-Site Request Forgery (Change Secret)
Cross-Site Request Forgery (Transfer Amount)


A9 - Using Known Vulnerable Components

Buffer Overflow (Local)
Buffer Overflow (Remote)
Drupal SQL Injection (Drupageddon)
Heartbleed Vulnerability
PHP CGI Remote Code Execution
PHP Eval Function
phpMyAdmin BBCode Tag XSS
Shellshock Vulnerability (CGI)
SQLiteManager Local File Inclusion
SQLiteManager PHP Code Injection
SQLiteManager XSS


A10 - Unvalidated Redirects & Forwards 

Unvalidated Redirects & Forwards (1)
Unvalidated Redirects & Forwards (2)
Other bugs... 
ClickJacking (Movie Tickets)
Client-Side Validation (Password)
HTTP Parameter Pollution
HTTP Response Splitting
HTTP Verb Tampering
Information Disclosure - Favicon
Information Disclosure - Headers
Information Disclosure - PHP version
Information Disclosure - Robots File
Insecure iFrame (Login Form)
Unrestricted File Upload


---------------  Extras  ----------------

 A.I.M. - No-authentication Mode
Client Access Policy File
Cross-Domain Policy File
Evil 666 Fuzzing Page
Manual Intervention Required!
Unprotected Admin Portal
We Steal Secrets... (html)
We Steal Secrets... (plain)
WSDL File (Web Services/SOAP)


ANKA TİM
Kullanıcı İmzası
Ülkü uğrunda gönüller delidir.
Kişiler ülkü için ölmelidir.


Konu The CrueL tarafından (18-05-2019 01:02 Saat 01:02 ) değiştirilmiştir.
boole, zancrow, "Tranquila, goodshepherd Teşekkür etti.

18-05-2019 01:39
#2
HydraThalles - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
01/2017
Nereden:
UnderGround
Yaş:
8
Mesajlar:
2.317
Teşekkür (Etti):
256
Teşekkür (Aldı):
529
Konular:
136
Ticaret:
(0) %
bWAPP Low Level - XML/XPath Injection (Login Form)


İlk önce XML/XPath Injection (Login Form) u seçiyoruz



seçip girdikten sonra bize ıd ve password girili bir alan geliyor. Id : Bee password : Bug






Yukarıdaki resimde giriş denemesi yapılınca error veriyor sıra bypass kodumuzu deniyoruz


bypass kodumuz : 1'or'1'='1

Giriş yapiyoruz ve resim deki gibi başarılı sonuç aliyoruz.






Videolu anlatım

Kullanıcı İmzası
"Atsız Ruh Adam kitabında "sevginin niçini olmaz ki" diye boşuna demiyordu. Kimi seversek sevelim, neye değer verirsek verelim, şundan dolayı seviyorum dediğimiz anda sevdiğimiz ne ise kim ise artık bir araçtan ibaret."
Konu The CrueL tarafından (18-05-2019 01:44 Saat 01:44 ) değiştirilmiştir.
BAGAY, boole, RTFM, goodshepherd, "Tranquila Teşekkür etti.
21-05-2019 22:25
#3
HydraThalles - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
01/2017
Nereden:
UnderGround
Yaş:
8
Mesajlar:
2.317
Teşekkür (Etti):
256
Teşekkür (Aldı):
529
Konular:
136
Ticaret:
(0) %
bWAPP Low Level - HTML Injection - Reflected (GET)

Öncelikle bWAPP HTML Injection - Reflected (GET)'i seçiyoruz



Ardından deneme olarak normal bir şekilde K.adına Hydra Şifre ye ise Thalles yazıyoruz




Go dedikten sonra bize resimde ki gibi bir dönüt veriyor.




Şimdi ise html header etiketi ile deneme yapiyorum.




Evet şifre yerine <h1> etiketini kullanarak Turkhackteam.org yaziyorum ve burada aldığım dönüt ise resimde ki gibidir, buradan html reflected açığı olduğunu anliyoruz.



Videolu anlatımı


Kullanıcı İmzası
"Atsız Ruh Adam kitabında "sevginin niçini olmaz ki" diye boşuna demiyordu. Kimi seversek sevelim, neye değer verirsek verelim, şundan dolayı seviyorum dediğimiz anda sevdiğimiz ne ise kim ise artık bir araçtan ibaret."
22-05-2019 00:49
#4
BAGAY - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
07/2014
Nereden:
127.0.0.1
Yaş:
20
Mesajlar:
653
Teşekkür (Etti):
56
Teşekkür (Aldı):
120
Konular:
45
Ticaret:
(0) %

SQL INJECTION (SQLITE)


bWAPP Bugs bölümünden SQL Injection (Sqlite) ‘ı seçiyoruz ve Hack diyoruz


Sistemde sql açığı olduğunu bildiğimiz için hata var mı diye bakmayacağım. Direkt tabloları bulmaya başlayalım.Normalde sitelerde php?id=2 gibi sonunda bi sayı oluyor o sayıyı 0 varmış gibi varsayarak tabloları şöyle arayacağız.1,2,3,4 diye tek tek arayacağız hangisinde site hata vermezse tablo sayımızı bulduk demektir


Evet bulduk 6 tablomuz varmış
0’ union select all 1,2,3,4,5,6 —

Daha sonra
Sistem sqlite olduğu için veritabanı adı sqlite_master dır.




0’ union select all 1,tbl_name,3,4,5,6 from sqlite_master —
Sorgusunu yaptık ve tablo isimlerini öğrendik.Bize lazım olan tablo adı users.




Daha sonra bu sorgumuzu yapıyoruz.
0’ union select all 1,sql,3,4,5,6 from sqlite_master where tbl_name=‘users’ —
Burada users tablomuzun içindeki değişkenlerin ismini öğreniyoruz ve buna göre bilgilerini çekeceğiz.



Geldik verileri çekmeye.Veri çekmek içinde şu sorgumuzu kullanıyoruz;
0’ union select all 1,id,login,password,email,6 from users —


Evet kullanıcı adı mail şifre hepsi geldi.Şifre md5 olarak geliyor.Onu çözmek içinde md5 crasher kullanabilirsiniz.
Kullanıcı İmzası
NE MUTLU TÜRK'ÜM DİYENE

Konu BAGAY tarafından (22-05-2019 00:53 Saat 00:53 ) değiştirilmiştir.
RTFM, goodshepherd, "Tranquila Teşekkür etti.
22-05-2019 21:21
#5
BAGAY - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
07/2014
Nereden:
127.0.0.1
Yaş:
20
Mesajlar:
653
Teşekkür (Etti):
56
Teşekkür (Aldı):
120
Konular:
45
Ticaret:
(0) %
bWAPP SQL Injection - Stored(Blog)

bWAPP Bugs bölümünden SQL Injection - Stored(Blog) u seçiyoruz ve sonra Hack diyoruz.


Blog ekleme yerine ‘ yazıyoruz ve bu hatayı alıyoruz sql açık mevcut demektir.




Veritabanı adını öğrenmek için şu sorguyu yapıyoruz;
bbb’ ,(select database()))— -

Veritabanı adımızı öğrendik aşağıdaki resimdeki gibiymiş.




Veritabanı adı “bWAPP” ve buradan direkt tabloların isimleri çekelim.
bbb’ ,(select group_concat(table_name) FROM information_Schema.tables where table_schema = “bWAPP”)) —



Daha sonra users isimli tablomuzun kolonlarını çekiyoruz şu sorgu ile ;
bbb’ ,(select group_concat(column_name) FROM information_Schema.columns where table_name = “users”)) —




En son olarak da bilgileri çekiyoruz şöyle ;
bbb’ ,(select group_concat(id, login, password, email) FROM users)) —


Kullanıcı İmzası
NE MUTLU TÜRK'ÜM DİYENE

RTFM, "Tranquila, goodshepherd Teşekkür etti.
22-05-2019 22:37
#6
HydraThalles - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
01/2017
Nereden:
UnderGround
Yaş:
8
Mesajlar:
2.317
Teşekkür (Etti):
256
Teşekkür (Aldı):
529
Konular:
136
Ticaret:
(0) %
bWAPP Low Level - HTML Injection - Reflected (Post)

Öncelikle bWAPP HTML Injection - Reflected (Post)'i seçiyoruz




Ardından deneme olarak normal bir şekilde K.adına Hydra Şifre ye ise Thalles yazıyoruz




Go dedikten sonra bize resimde ki gibi bir dönüt veriyor.




Şimdi ise html header etiketi ile deneme yapiyorum.




Evet şifre yerine <h1> etiketini kullanarak Turkhackteam.org yaziyorum ve burada aldığım dönüt ise resimde ki gibidir, buradan html reflected açığı olduğunu anliyoruz.




Videosu




Get ile Post arasında ki fark ;

Get url üzerinden yönetilebilir , Post ise veri girebildiğimiz bir yerden
Kullanıcı İmzası
"Atsız Ruh Adam kitabında "sevginin niçini olmaz ki" diye boşuna demiyordu. Kimi seversek sevelim, neye değer verirsek verelim, şundan dolayı seviyorum dediğimiz anda sevdiğimiz ne ise kim ise artık bir araçtan ibaret."
RTFM, goodshepherd Teşekkür etti.

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı