THT DUYURU


Web & Server Güvenliği ve Zafiyetler Doğru web ve veritabanı sunucusu güvenliği sağlanmadan, bilgisayar korsanları hassas verilerinize erişebilir. Web, Sunucu ve veritabanı güvenliğini defansif ve ofansif yönleri ile bu bölümdeki konularla öğrenebilirsiniz.

Seçenekler

Sunucu şablonlarını hackleyelim !

JİTEM - ait Kullanıcı Resmi (Avatar)
Anka Red Team Editor
Üyelik tarihi:
05/2020
Nereden:
ÖTÜKEN
Mesajlar:
885
Konular:
61
Teşekkür (Etti):
233
Teşekkür (Aldı):
647
Ticaret:
(0) %
15
596
4 Gün önce
#1











Herkese Selam değerli TurkHackTeam Ailesi Bu Konumda Sizlere Server-side template ( Sunucu tarafı enjeksiyonu ) nedir nasıl yapılır bundan bahsedecegim ilgisi olanlara faydalı olması dilegim ile.









Sunucu tarafı şablon yerleştirme nedir? :
Şablon motorları sabit şablonları geçici verilerle birleştirerek web sayfaları oluşturmak için tasarlanmıştır Sunucu tarafı şablon enjeksiyon saldırıları kullanıcı girişi veri olarak iletilmek yerine dogrudan bir şablona birleştirildiginde gerçekleşebilir. Bu, saldırganların şablon motorunu manipüle etmek için rastgele şablon yönergeleri eklemelerine ve genellikle sunucunun tam kontrolünü ele geçirmelerine olanak tanır. Adından da anlaşılacagı gibi, sunucu tarafı şablon enjeksiyon yükleri sunucu tarafında teslim edilir ve degerlendirilir bu da onları tipik bir istemci tarafı şablon enjeksiyonundan çok daha tehlikeli hale getirebilir.









Sunucu tarafı şablon yerleştirdikten sonra ne gibi etikler görebiliriz? :
bir saldırgan potansiyel olarak uzaktan kod yürütmeyi başarabilir arka uç sunucunun tam kontrolünü ele geçirebilir ve onu dahili altyapıya başka saldırılar gerçekleştirmek için kullanabilir tam olarak uzaktan kod yürütmenin mümkün olmadıgı durumlarda bile, bir saldırgan, potansiyel olarak hassas verilere ve sunucudaki rastgele dosyalara okuma erişimi elde ederek birçok başka saldırının temeli olarak sunucu tarafı şablon enjeksiyonunu kullanmaya devam edebilir.









Bu açıklar nasıl ortaya çıkarlar? :
İçerigin oluşturuldugu statik şablonlar genellikle sunucu tarafı şablon enjeksiyonuna karşı korunaklıdır fakat sizler için Klasik bir örnek. Twig şablonundan alınan aşagıdaki code kısmında belirittigim yer her useri kendi adıyla karşılayan bir e-postadır.

Kod:
 $output = $twig->render("Dear {first_name},", array("first_name" => $user.first_name) );
Buda sunucu tarafı şablon enjeksiyonuna karşı korunaklı degildir çünkü kullanıcının adı yalnızca veri olarak şablona aktarılır sonrasında ise Bununla birlikte şablonlar basitçe dizeler oldugundan yazılımcılar bazen kullanıcı girdilerini oluşturmadan önce dogrudan şablonlarla birleştirirler Yukarıdaki code kısmını biraz baz alarak benzer bir şey yapalım fakat bu sefer kullanıcılar e-postanın bölümlerini gönderilmeden önce özelleştirebilirler Örneğin kullanılan ismi seçebilirler.

Kod:
$output = $twig->render("Dear " . $_GET['name']);
Bu örnegimizde ise şablonımuza statik bir deger göndermek yerine şablonun GET parametresi kullanılarak dinamik olarak isim üretilmektedir Şablon sözdizimi sunucu tarafında degerlendirildiginden aşagıdaki code kısmı gibi parametrenin içine sunucu tarafı şablon enjeksiyon yükü yerleştirmesine izin verir.

Kod:
http://vulnerable-website.com/?name={{bad-stuff-here}}
Bu tarz zaafiyetler bazen güvenlik açıklarına pek fazla aşina olmayan yazılımcıların hatalı şablon tasarımlarından kaynaklanıyor. Yukarıdaki code kısmında belirtigim gibi bazıları kullanıcıların giridisini içeren birleştirilmiş ve bir şablona yerleştirilmiş farklı bileşenler görebilirsiniz. biraz SQL inject zaafiyetine benzetilebilir.










Sunucu Tarafı Şablonuna Saldıralım! :


1.Zaafiyeti Bulma;
Sunucu tarafı şablon injecti için zaafiyetlerimiz genellikle karmaşık oldugundan dolayı degil sadece bu açıgı bulmak biraz zordur zaman alabilir ve yorabilir Eğer bu zaafiyeti gözünüz ile direkt olarak tesipt edebiliyorsanız bu zaafiyeti aşırı kolay bir şekilde kullanabilirsiniz dostlar. Basit ve ilk yaklaşımımız şablonda genellikle kullanılan semboller olabilir $ { < % [ ' '' \ a c / Bir ihtimal de olsa tutma ihtimali var alta bırakacagım örnek gibi olabilir

Kod:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
bu tarz errorlar ile karşılaşabilirsiniz dostlar bu bir sql injection zaafiyetinde aldıgımız errordur.

2.Düz Metin baglacı;
Genel olarak şablonlarda HTML etiketlerini kullanarak veya HTTP yanıtı gönderilmeden önce arka uçta HTML olarak işlenecek şablonun yerel sözdizimini kullanarak içeriği serbestçe girmenize olanak tanır. örnek olarak Freemarkerlerde (Hello ' + username) benzer bir şeye dönüşürdü Hello JİTEM.

Bu Zaafiyet bazen XSS için kullanılabilir ve genellikle basit bir XSS Zaafiyeti ile karıştırılır.
Devam edelim ve şu kodu içeren bir şablon buldugumuzu varsayalım.

Kod:
render('Hello ' + username)
sonrasında aşağıda code kısmında belirtecegim gibi bir URL isteyerek sunucu tarafı şablon inject testi yapabiliriz.

Kod:
http://vulnerable-website.com/?username=${7*7}
Ortaya çıkan bildiri
Kod:
 Hello 49
bu matematiksel çarpımın sonucu sunucumuz tarafından degerlendirildigini gösterir. Bu bize sunucu tarafı şablon injectinin var oldugunu kanıtlayan daha iyi bir kavramdır.


3.Kod Baglacı

Yukarıdaki bellirtigim e-posta örnegimizdeki gibi zaafiyetin kullanıcı girdisinin bir şablon ifadesi ile yerleştirilmesi sonucu ortaya çıkar. aşagıda verecegim code örnegi gibi bir parametrenin içinde olan yada sonradan eklenen kullanıcı tarafından kontrol edilebilen bir degişken olabilir.

Kod:
greeting = getQueryParameter('greeting')
engine.render("Hello {{"+greeting+"}}", data)
Sonrasında URLmiz şu şekilde olacaktır

Kod:
 http://vulnerable-website.com/?greeting=data.username
Bu baglaçta sunucu tarafı şablon injectini test etmeni bir diğer yolu önce şablona rastgele HTML ekleyerek parametremizin dogrudan XSS güvenlik açıgı içermedigini belirlemektir

Kod:
 http://vulnerable-website.com/?greeting=data.username<tag>
Bir sonraki adımımız ise ortak şablonlama sözdizinini kullanarak ifadeyi denemek ve ondan sonra rastgele HTML injectlemeye çalışmaktır

Kod:
 http://vulnerable-website.com/?greeting=data.username}}<tag>
4.Tanıma
Şablonumuzun inject potansiyelini tespit ettiginizde sonraki adım şablon motorunu belirlemektir. Çok fazla şablon dili olmasına ragmen birçogu özellikle HTML karakterleriyle çakışmayacak şekilde seçilmiş çok benzer sözdizimi kullanır. Sonuç olarak, hangi şablon motorunun kullanıldıgını test etmek için sonda yükü oluşturmak nispeten basit olabilir. Yanlızca dizin göndermek genel olarak yeterli oluyor cünkü ortaya çıkan error message size şablon motorunun ne oldugunu ve hangi sürüm oldugunu söylr örnegin olmayan bir ifade <%=foobar%> Ruby tabanlı olan ERB motorundan şu yanıtı alırız.

Kod:
(erb):1:in `<main>': undefined local variable or method `foobar' for main:Object (NameError)
from /usr/lib/ruby/2.5.0/erb.rb:876:in `eval'
from /usr/lib/ruby/2.5.0/erb.rb:876:in `result'
from -e:4:in `<main>'










Evet değerli TurkHackTeam Ailesi Bu Konumda Sizlere Server-side template ( Sunucu tarafı enjeksiyonu ) nedir nasıl yapılır gibi şeylerden bahssetim umarım sizleri bilgilendirmişimdir esen kalın.




İYİ FORUMLAR İYİ EĞLENCELER İYİ ŞANSLAR

















---------------------
Benim Kudretimin Ulaştıgı Yerlere Onların Hayalleri Bile Ulaşamaz


Twitter: JitemTHT
Discord: Hakan#0666
Telegram: JitemTHT
Konu S9NTX tarafından (3 Gün önce Saat 16:50 ) değiştirilmiştir.
The Golge - ait Kullanıcı Resmi (Avatar)
Anka Red Team Junior
Üyelik tarihi:
05/2019
Nereden:
Gölge Diyarı
Mesajlar:
123
Konular:
18
Teşekkür (Etti):
238
Teşekkür (Aldı):
130
Ticaret:
(0) %
4 Gün önce
#2
Eline emeğine sağlık kardeşim.Her zamanki gibi güzel ve bilgilendirici olmuş kanka
---------------------
Işığını Kaybetmiş Bir Gölge
Eronmay - ait Kullanıcı Resmi (Avatar)
Haftanın Deneyimli Moderatörü
Üyelik tarihi:
07/2016
Nereden:
Kader
Mesajlar:
4.413
Konular:
635
Teşekkür (Etti):
629
Teşekkür (Aldı):
1401
Ticaret:
(0) %
3 Gün önce
#3
Efsane, eline sağlık...
---------------------
EX
EX - ait Kullanıcı Resmi (Avatar)
Basın & Medya Ekibi (Deneyimli)
Üyelik tarihi:
03/2020
Nereden:
Trabzon
Mesajlar:
673
Konular:
94
Teşekkür (Etti):
429
Teşekkür (Aldı):
551
Ticaret:
(0) %
3 Gün önce
#4
Eline emeğine sağlık.
DeathWarrior01 - ait Kullanıcı Resmi (Avatar)
Stajyer Moderatör
Üyelik tarihi:
01/2021
Nereden:
Kars
Mesajlar:
898
Konular:
15
Teşekkür (Etti):
282
Teşekkür (Aldı):
100
Ticaret:
(0) %
3 Gün önce
#5
Eline sağlık dostum
---------------------
Chapo Bey - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
11/2020
Nereden:
KERKÜK
Mesajlar:
52
Konular:
1
Teşekkür (Etti):
11
Teşekkür (Aldı):
11
Ticaret:
(0) %
3 Gün önce
#6
Eline sağlık hocam
--------------------- ÖNCE VATAN SONRA VATAN!
Ghost Killer - ait Kullanıcı Resmi (Avatar)
Anka Red Team Junior
Üyelik tarihi:
01/2019
Nereden:
Mesajlar:
5.239
Konular:
150
Teşekkür (Etti):
132
Teşekkür (Aldı):
2581
Ticaret:
(0) %
3 Gün önce
#7
eline sağlık .
---------------------
𐰤𐰀:𐰢𐰆𐱃𐰞𐰆:𐱅𐰇𐰼𐰜𐰢:𐰓𐰃𐰘𐰤𐰀
JİTEM - ait Kullanıcı Resmi (Avatar)
Anka Red Team Editor
Üyelik tarihi:
05/2020
Nereden:
ÖTÜKEN
Mesajlar:
885
Konular:
61
Teşekkür (Etti):
233
Teşekkür (Aldı):
647
Ticaret:
(0) %
3 Gün önce
#8
Alıntı:
The Golge´isimli üyeden Alıntı Mesajı göster
Eline emeğine sağlık kardeşim.Her zamanki gibi güzel ve bilgilendirici olmuş kanka
rica ederim gardaşım ne demek

Alıntı:
Eronmay´isimli üyeden Alıntı Mesajı göster
Efsane, eline sağlık...
rica ederim abi ne demek
---------------------
Benim Kudretimin Ulaştıgı Yerlere Onların Hayalleri Bile Ulaşamaz


Twitter: JitemTHT
Discord: Hakan#0666
Telegram: JitemTHT
Konu Profesör tarafından (3 Gün önce Saat 21:28 ) değiştirilmiştir. Sebep: Flood
ѕeleɴια - ait Kullanıcı Resmi (Avatar)
İstihbarat Tim
Üyelik tarihi:
05/2018
Mesajlar:
1.953
Konular:
207
Teşekkür (Etti):
491
Teşekkür (Aldı):
1771
Ticaret:
(0) %
3 Gün önce
#9
Eline sağlık Jitem
---------------------
S_w_o_R_d - ait Kullanıcı Resmi (Avatar)
Basın & Medya Ekibi
Üyelik tarihi:
10/2020
Nereden:
Neptün
Mesajlar:
1.593
Konular:
203
Teşekkür (Etti):
298
Teşekkür (Aldı):
1007
Ticaret:
(0) %
3 Gün önce
#10
Eline sağlık.
---------------------
TürkHackTeam Sosyal Medya Hesapları ☜

Telegram | Twitter | Instagram | Facebook
| Youtube

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler