SlideShare a Scribd company logo
1 of 198
SİBER OLAY TESPİT
VE MÜDAHALE
EĞİTİMİ
blog.btrisk.com @btrisk /btrisktv /btrisk
PROBLEM
Sürekli değişen ve daha önce görülmemiş saldırı
vektörleri
OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
Sabırlı ve hedefe odaklı saldırganlar
OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
Artan veri miktarı ve verinin artan değeri
OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
SALDIRI METODOLOJİSİ
SALDIRI METODOLOJİSİ
ADVANCED
PERSISTENT
THREAT (APT)
NEDİR?
TANIMI
Bir saldırganın ağa sızması, uzun süre ağda izleme yapması ve
veri sızdırması, hedefine doğru ilerlerken diğer sistemlere
sızması ve nihayetinde asıl amacını uygulaması ile sonuçlanan
saldırı türüne verilen addır.
DOĞASI
• Ağa sızmak için genellikle sosyal mühendislik ve fiziksel sızma
yöntemleri tercih edilir. Ağa ilk adım genellikle son kullanıcı
bilgisayarları üzerinden atılır.
• Hedefe özel geliştirilmiş zararlı yazılım kullanılır. Hedef
bilgisayar üzerindeki koruma önlemlerini minimize eder,
genellikle keylogger ve screen capture özelliklerini barındırır.
ADVANCED PERSISTENT THREAT (APT)
DOĞASI (Devamı)
• Ele geçirilen sisteme erişimin sürekliliği için dışarı yönlü tünel
açılmabilmesi gereklidir. Bu nedenle bu tür saldırıların
engellenebilmesi ve tespiti için en etkili kontrollerden birisi
dışarı yönlü filtreleme [egress filtering] ve siber istihbarat
desteği de bulunan ağ izleme sistemleridir.
• Saldırgan hedefine ulaşmak için ağ içinde sızma testi
tekniklerini uygulayarak diğer sistemlere de sızmaya çalışır
[lateral movement].
• Saldırgan kritik sistemlere yeterince bilgi topladıktan sonra
geçerli ve yetkili bir erişime benzer şekilde erişir, bu sayede
izlenen sistemler üzerinde şüpheli aktiviteyi minimize eder.
ADVANCED PERSISTENT THREAT (APT)
TİPİK SALDIRI
YÖNTEMLERİ
[İLK ADIM]
FİZİKSEL ERİŞİM İHLALİ
LAN Turtle Raspberry Pi – Mini Bilgisayar
Rogue Access Point
CD / USB ile Boot Etme
FİZİKSEL ERİŞİM İHLALİ
Bad USB Script Örneği
SOSYAL MÜHENDİSLİK
Drive by Downloads
Drive by download saldırılarında kurban sadece bir web sitesini
ziyaret ettiğinde bilgisayarına zararlı yazılım indirilmekte ve
çalıştırılmaktadır. Bu saldırı şu şekilde geçekleştirilmektedir:
• Kurbanın Zararlı Siteyi Ziyareti: Saldırgan kurbanı kendi kontrol
ettiği bir siteye sosyal mühendislik yöntemiyle yönlendirir. Ya da
normal bir web sitesinin HTML injection açıklığını kullanarak bu
siteye görünmeyen bir IFRAME ekler, bu frame kendi kontrol
ettiği bir sitenin içeriğini barındırır. Ya da reklam altyapısını
kullanarak yayınladığı reklam içeriği ile sonraki adımları
gerçekleştirir.
SOSYAL MÜHENDİSLİK
Drive by Downloads
• Exploit Kit: Saldırgan kontrol ettiği sitenin içeriğine “exploit kit”
adı verilen obfuscate edilmiş Javascript kodlarını ekler. Exploit
kit’ler 20$-2500$ fiyat aralığında satın alınabilirler. Exploit kit
çok kullanılan browser plugin’lerinin (ör: Flash, Silverlight, Java,
PDF reader v.d.) versiyonlarını inceledikten sonra uygun olan
exploit’i kullanır.
• Download ve Ele Geçirme: Tespit edilen açıklığa yönelik
kullanılan exploit shellcode’u saldırganın istediği herhangi bir
malware’i kurbanın bilgisayarına indirir ve çalıştırır. Saldırgan bir
Exploit Kit Panel üzerinden kurduğu altyapının performansını
izleyebilir.
SOSYAL MÜHENDİSLİK
Zararlı Yazılım İçeren Dosyalar
• Zararlı macro içeren ofis dokümanları, PUB dosyaları
(powershell, exe v.d. çalıştırılabilir kodları çalıştırabilir,
internetten dosya , script v.b. indirip çalıştırabilir)
• HTA dosyasından powershell çalıştırma
• LNK dosyasından powershell çalıştırma
• Right to Left Order (RTLO) isimlendirme kullanarak çalıştırılabilir
dosyaya ofis dokümanı görüntüsü verme (ör: finans_tlexe.xls)
• Renderer uygulama açıklıklarını kullanan dosyalar (ör: PDF,
MSWord, Flash, v.d.)
• Signed Applet saldırısı
SOSYAL MÜHENDİSLİK
Zararlı Yazılım İçeren Dosyalar
• Icon'u değiştirilmiş (ofis dokümanına, PDF dokümanına
benzetilmiş) çalıştırılabilir zararlı uygulama dosyaları
(Windows'un öntanımlı olarak bilinen dosya uzantılarını gizleme
özelliğinden faydalanılması)
UYGULAMA AÇIKLIKLARI
• SQL Injection Açıklıkları
• Dosya Yükleme Açıklıkları
• Remote File Injection (RFI) / Local File Injection (LFI)
ÜÇÜNCÜ TARAFLARA VE PERSONELE
SAĞLANAN UZAKTAN ERİŞİMLER
ÖRNEK: TARGET HACK
HAKKINDA
Target Corporation is the second-largest discount store retailer in
the United States, behind Walmart, and a component of the S&P
500 Index. Founded by George Dayton and headquartered in
Minneapolis, Minnesota, the company was originally named
Goodfellow Dry Goods in June 1902 before being renamed the
Dayton's Dry Goods Company in 1903 and later the Dayton
Company in 1910.
Kaynak: Wikipedia
ÜÇÜNCÜ TARAFLARA VE PERSONELE
SAĞLANAN UZAKTAN ERİŞİMLER
ÖRNEK: TARGET HACK
NE OLDU?
23 Aralık 2013'te 40 milyon debit ve kredi kartı bilgisinin [70-110
milyon arası olduğu da iddia edildi] çalındığı duyuruldu. Target 17
Kasım ve 15 Aralık arasında alışveriş yapmış olan müşterilerinin
etkilendiğini duyurdu.
Çalınan veriler müşteri adı soyadı, debit ve kredi kart numarası,
son kullanma tarihleri ve CVV bilgilerini içeriyordu.
ÜÇÜNCÜ TARAFLARA VE PERSONELE
SAĞLANAN UZAKTAN ERİŞİMLER
ÖRNEK: TARGET HACK
NASIL OLDU?
Saldırganlar önce Fazio Mechanical Services adlı iklimlendirme
[HVAC] şirketini hedef alarak bu şirketin Target'a sorumlu oldukları
sistemleri izlemek amacıyla kullandıkları erişim bilgilerini çaldılar.
Kullandıkları yöntem Spear Phishing'di.
ÜÇÜNCÜ TARAFLARA VE PERSONELE
SAĞLANAN UZAKTAN ERİŞİMLER
ÖRNEK: TARGET HACK
NASIL OLDU?
Saldırganlar seçtikleri birkaç mağazadaki POS cihazlarına test amaçlı
olarak zararlı yazılım yükledi ve 15-28 Kasım tarihleri arasında
testlerini yaptı.
30 Kasım'dan itibaren POS cihazlarının çoğuna 5 farklı zararlı yazılım
versiyonunu yüklediler ve 2 Aralık tarihine kadar bilgi topladılar.
Topladıkları verileri Target ağı içindeki 3 ayrı noktaya ve sadece saat
10 A.M. – 6 P.M. arasında gönderdiler. 2 Aralık'ta toplanan veriler
Moskova'ya gönderildi. 12 Aralık'ta inceleme başlatıldığında artık çok
geçti.
ÜÇÜNCÜ TARAFLARA VE PERSONELE
SAĞLANAN UZAKTAN ERİŞİMLER
KULLANICILARDAN SIZDIRILAN ERİŞİM
BİGİLERİ
• Phishing (oltalama) saldırıları
• Farklı sistemler üzerinde kurum erişim bilgilerinin kullanılması
(cafe hotspot sistemleri, elektronik ticaret siteleri, web mail ve
sosyal ağ uygulamaları, v.d.)
• Kurum kullanıcılarının şahsi bilgisayarlar ve cihazlarında bulunan
erişim bilgilerinin çalınma, tamir, satılma gibi olaylar sırasında
sızması
TİPİK SALDIRI
YÖNTEMLERİ
[BİLGİ TOPLAMA VE
YETKİ YÜKSELTME]
BİLGİ TOPLAMA [ENUMERATION]
Erişilen sistem üzerinde toplanan bilgiler ve işletim sistemlerinin
kendilerine has konfigürasyon özellikleri kullanılarak yetki
yükseltilebilir.
(bkz. https://www.exploit-db.com/docs/turkish/42757-[turkish]-
windows-and-linux-privilege-escalation.pdf)
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
whoami Kullanıcı domain ve adı
hostname Sunucu adı
systeminfo İşletim sistemi adı ve versiyonu yüklü hotfix'ler
whoami /groups Kullanıcımızın üyesi olduğu gruplar
net users Kullanıcı listesi
net localgroup Administrators Administrators grubunun üyeleri
net localgroup Kullanıcı grupları
tasklist /SVC Çalışan prosesler ve ilgili servis bilgileri
ipconfig /all Ağ arayüz bilgileri
netstat -ano Dinleyen ağ servisleri
TEMEL BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
net start Çalışan servisler
quser Sisteme bağlı kullanıcılar
qprocess Çalışan uygulamalar ve uygulamaları başlatan
kullanıcılar
driverquery Driver'lar
net share Paylaşımlar
more %WINDIR%System32driversetchosts hosts dosyası
more
%WINDIR%System32driversetcnetworks
networks dosyası
gpresult /R Group policy
TEMEL BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
reg query
HKCUSOFTWAREPoliciesMicrosoftWindow
sInstaller /v AlwaysInstallElevated
Always Install Elevated ayarı aktif mi?
reg query
HKLMSOFTWAREPoliciesMicrosoftWindow
sInstaller /v AlwaysInstallElevated
Always Install Elevated ayarı aktif mi?
accesschk.exe -uwcqv "Authenticated Users" *
/accepteula
Servis konfigürasyonu “Authenticated Users”
grubu tarafından değiştirilebilen servisler
accesschk.exe -uwcqv "Users" * /accepteula Servis konfigürasyonu “Users” grubu
tarafından değiştirilebilen servisler
accesschk.exe -uwcqv "Everyone" *
/accepteula
Servis konfigürasyonu “Everyone” grubu
tarafından değistirilebilen servisler
KOLAY HEDEFLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
reg query
"HKLMSOFTWAREMicrosoftWindows
NTCurrentversionWinlogon" /v
DefaultUsername
Default logon kullanıcı adı
reg query
"HKLMSOFTWAREMicrosoftWindows
NTCurrentversionWinlogon" /v
DefaultPassword
Default logon parolası
wmic service get
name,displayname,pathname,startmode 2>
nul |findstr /i /v "c:windows" |findstr /i /v
"""
Servis executable’ı tırnak ile belirtilmemiş
servisler
KOLAY HEDEFLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
dir  /a/s/b > dosyalistesi.txt Daha sonra kullanmak üzere tüm dosyaların
listesinin çıkarılması
type dosyalistesi.txt | findstr /I unattend.xml
type dosyalistesi.txt | findstr /I unattend.txt
type dosyalistesi.txt | findstr /I sysprep.inf
type dosyalistesi.txt | findstr /I sysprep.xml
İçinde öntanımlı credential barındırabilecek
dosyalar
type dosyalistesi.txt | findstr /I .*passw*. |
findstr /VI .*.chm$ | findstr /VI .*.log$ |
findstr /VI .*.dll$ | findstr /VI .*.exe$
type dosyalistesi.txt | findstr /I .*ntds[.].*$
type dosyalistesi.txt | findstr /I .*ssh.*[.]ini$
type dosyalistesi.txt | findstr /I
.*ultravnc[.]ini$
type dosyalistesi.txt | findstr /I .*vnc[.]ini$
...
İlginç dosya adları
DOSYA TARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
findstr /si "password=" C:*.ini C:*.xml C:*.txt C:*.bat
findstr /si "passwd=" C:*.ini C:*.xml C:*.txt C:*.bat
findstr /si "pass=" C:*.ini C:*.xml C:*.txt C:*.bat
findstr /si "pwd=" C:*.ini C:*.xml C:*.txt C:*.bat
Belli uzantılı dosyalar içinde
geçebilecek olası password değerleri
DOSYA TARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
reg query HKLMSOFTWARERealVNCvncserver /v Password
reg query HKLMSoftwareTightVNCServer /v Password
reg query HKCUSoftwareTightVNCServer /v Password
reg query HKLMSoftwareTightVNCServer /v
PasswordViewOnly
reg query HKLMSoftwareTigerVNCWinVNC4 /v Password
reg query HKLMSOFTWAREORLWinVNC3Default /v
Password
reg query HKLMSOFTWAREORLWinVNC3 /v Password
reg query HKCUSoftwareORLWinVNC3 /v Password
VNC parolaları içerebilecek
registry anahtarları
reg query HKLM /k /f password /t REG_SZ /s
reg query HKCU /k /f password /t REG_SZ /s
Registry kayıtları içindeki olası
password değerleri
REGISTRY İÇİNDE BİLGİ ARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
schtasks /query /fo LIST /v Zamanlı (scheduled) işler
for /f "tokens=2" %%a in ('sc queryex type^=
service state^= all ^| find ^/i
"SERVICE_NAME"') do (sc qc %%a)
Servis bilgileri - Binary_Path_Name ve
Service_Start_Name bilgileri ile
for /f "tokens=1 delims=," %%a in ('tasklist
/SVC /FO CSV ^| findstr /I .*exe*. ^| findstr
/VI "smss.exe csrss.exe winlogon.exe
services.exe spoolsv.exe explorer.exe
ctfmon.exe wmiprvse.exe msmsgs.exe
notepad.exe lsass.exe svchost.exe findstr.exe
cmd.exe tasklist.exe"') do (findstr %%a$ |
findstr /VI ".*winsxs*.") <dosyalistesi.txt >>
serviceexes.txt for /f "tokens=*" %%a in
(serviceexes.txt) do (cacls "%%a")
Servis executable dosyaları erişim hakları
TASK VE SERVİS TARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
dsquery group Domain grupları listesi
dsget group "CN=Domain
Admins,CN=Users,DC=btrisk,DC=local" -
members
“Domain Admins” grubu üyeleri
dsget user
"CN=femiral,CN=Users,DC=btrisk,DC=local" -
memberof
Belli bir kullanıcının üyesi olduğu gruplar
dsquery user -samid "femiral" | dsget user -
memberof -expand
Kullanıcı adı ile kullanıcının üyesi olduğu
grupların sorgulanması
dsquery user Domain kullanıcılarının listesi
dsquery computer Domain'e bağlı bilgisayarların listesi
csvde -f domainenum.csv Tüm LDAP ağacının export edilmesi
ldifde -f domainenum.csv Tüm LDAP ağacının export edilmesi
DOMAIN SUNUCUSU ÜZERİNDE ÇALIŞTIRILABİLECEK KOMUTLAR
SALDIRGANLARIN YETKİ YÜKSELTME
İMKANLARI
• Yetki yükseltme imkanları iki temel alandan
kaynaklanır:
• Konfigürasyon hataları ve erişim bilgilerinin sızması
• Lokal Exploit imkanları
• Belli bir dönem çok sık kullanılmış olan lokal
exploitlere örnek olarak MS14-058 açıklığı ile Local
System kullanıcı haklarına yükseltme ve DC
sunucusuna eriştikten sonra MS14-068 açıklığı ile
Domain Admin kullanıcı haklarına yükseltme imkanları
verilebilir.
BİLGİ TOPLAMA VE YETKİ YÜKSELTME
AŞAMASINDA TESPİT
• Domain ve erişilen sistem hakkında bilgi toplama
amacıyla kullanılan komutların pek çoğu sıradan
kullanıcılar tarafından kullanılmayacağından bu
proses'lerin başlatılmasının izlenmesinde fayda vardır.
• Ayrıca lateral movement için kullanılabilen ancak
sıradan kullanıcılar tarafından sık kullanılmayan
komutların da izlenmesinde fayda vardır.
İZLENMESİNDE FAYDA OLABİLECEK BAZI
KOMUTLAR
cscript vbscript çalıştırmak için
del Parametre olarak bir exe, bat, ps1 dosyası kullanılmışsa
procdump, accesschk, psexec ve
diğer Sysinternals araçları
Bellek dump etme, erişim hakları sorgulama, uzakta
komut çalıştırma
powershell Powershell fonksiyonalitesini kullanma
regsvr32 Applocker kontrolünü aşmak için
vssadmin NTDS.DIT dosyasını çalmak için Volume Shadow Copy
alma
wmic WMI fonksiyonalitesini kullanma
schtasks Scheduled iş oluşturmak için
sc Servis konfigürasyonunu yönetmek ve sorgulama işlemleri
için
netsh Firewall konfigürasyonunu yönetmek için
reg Registry’ye değer ekleme, okuma için
MICROSOFT İMZALI UYGULAMALAR
KULLANARAK VERİ TOPLAMA ÖRNEĞİ
HEDEF BİLGİSAYAR
ÜZERİNDE
SALDIRGANIN
PLATFORMU
ÜZERİNDE
procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz # sekurlsa::minidump lsass.dmp
Switch to minidump
mimikatz # sekurlsa::logonPasswords
<....>
BİLGİ TOPLAMA VE YETKİ YÜKSELTME – İlk Erişim
Sonrası Analiz, Cepheyi Güçlendirme ve Yetki Yükseltme
• Bilgi toplama script ve araçlarını ele geçirilen platforma yükleme
ve çalıştırma
• Local exploit çalıştırarak yetki yükseltme
• Bir konfigürasyon zaafından faydalanarak yetki yükseltme
• Elde edilen arka kapının sürekliliğini sağlama
• İşlemci gücünü kullanma amacıyla sisteme erişildiyse:
• DDOS amaçlı ise gerekli araçları yükleme ve emirler için
Command & Control sunucusuna bağlanmaya başlama
• Crypto Mining amaçlı ise gerekli araçları yükleme ve yine
komuta sunucusuna bağlanmaya başlama
TİPİK SALDIRI YÖNTEMLERİ
BİLGİ TOPLAMA VE YETKİ YÜKSELTME – Yetki Yükseltme
Sonrası Daha Fazla Bilgi Toplama
• Parola hash’lerini ele geçirme
• Bellekten parola çalma
• Registry’den VNC parolası, browser’lar tarafından saklanan
erişim bilgileri, WinScp tarafından saklanan erişim bilgileri gibi
pek çok erişim bilgisini ele geçirme
• Domain ve diğer sistemlerle ilgili bilgi toplama
• Diğer dosyaları inceleme
• Diğer sistemlere yönelik taramalara başlama
TİPİK SALDIRI YÖNTEMLERİ
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
whoami Kullanıcı adı
id Kullanıcı id’si ve grupları
hostname Sunucu adı
uname -a Sistem ve kernel bilgisi
cat /etc/*-release İşletim sistemi bilgisi
lscpu İşlemci mimari bilgisi
/sbin/ifconfig -a Tüm ağ arayüzlerinin listesi
echo $HOME “home” dizinimiz
ls -ahl ~ “home” dizin içeriğimiz ve erişim hakları
printenv Environmental variable değerleri
TEMEL BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
find / -type d -not -path "/proc/*" ( -perm -o+w )
-exec ls -ald {} ;
Herkesin yazabileceği dizinlerin listesi
last Son kullanıcı aktiviteleri
netstat -antp TCP servislerin ve ilgili proseslerin listesi
netstat -anup UDP servislerin ve ilgili proseslerin listesi
TEMEL BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
cat /etc/passwd passwd dosyası
grep -v -E '^#' /etc/passwd | awk -F: '$3 == 0{print
$1}'
root - yani id’si 0 olan - kullanıcıların listesi
for i in $(cat /etc/passwd 2>/dev/null| cut -d':' -f1
2>/dev/null);do id $i;done 2>/dev/null | grep -i
"sudo"
sudo grubuna üye kullanıcılar
for i in $(cat /etc/passwd 2>/dev/null| cut -d':' -f1
2>/dev/null);do id $i;done
Kullanıcıların grup üyelikleri
cat /etc/group group dosyası
cat /etc/shadow shadow dosyası – görebiliyorsak
DİĞER KULLANICILARLA İLGİLİ BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
ls -ahlR /root/ /root/ dizini altındaki dosyalar ve erişim
hakları
ls -ahlR /home/ /home/ dizini altındaki dosyalar ve erişim
hakları
find /home/ -perm -4 -type f -exec ls -al {} ; /home/ dizini altındaki okunabilir
dosyaların listesi
DİĞER KULLANICILARLA İLGİLİ BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
sudo -l -n 2>/dev/null | tee sudo-config-enum.txt sudo haklarımız
cat sudo-config-enum.txt 2>/dev/null | grep -i -E
'vi|awk|perl|find|nmap|man|more|less|tcpdum
p|bash|sh|vim|nc|netcat|python|ruby|lua|irb'
Shell escape imkanı veren sudo haklarımız
sudo -V sudo versiyonu (sudoedit açıklığını
kullanmak için)
ls -al /etc/sudoers sudoers dosyası erişim hakları
cat /etc/sudoers sudoers dosyası içeriği - görebiliyorsak
SUDO BİLGİLERİ
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
ls -la /etc/cron* /etc/cron dizinlerinde bulunan dosyalar ve
erişim hakları
find /etc/cron* -perm -0002 -exec ls -la {} ; -exec
cat {} 2>/dev/null ;
Other tarafından yazılabilir crontab
dosyaları ve içerikleri
cat /etc/crontab /etc/crontab dosyası içeriği
ls -laR /var/spool/cron Varsa root ve diğer kullanıcıların crontab
dosyaları listesi
find /var/spool/cron/ -type f -exec tail -n +1 {} + Varsa root ve diğer kullanıcıların crontab
dosyaları içerikleri
ls -laR /etc/cron.d Varsa /etc/cron.d dizininde bulunan
dosyaların listesi
find /etc/cron.d/ -type f -exec tail -n +1 {} + Varsa /etc/cron.d dizininde bulunan
dosyaların içerikleri
CRON JOB BİLGİLERİ
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
cat /etc/anacrontab /etc/anacrontab dosyası içeriği
cat /etc/passwd | cut -d ":" -f 1 | xargs -n1 crontab
-l -u
Varsa kullanıcıların aktif cron
konfigürasyonları
CRON JOB BİLGİLERİ
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
find / -uid 0 -perm -4002 -type f -exec ls -al {} ; Sahibi “root” olan other tarafından
yazılabilir setuid dosyalar
find / -perm -4002 -type f -exec ls -al {} ; Other tarafından yazılabilir tum setuid
dosyalar
find / -perm -4000 -type f -exec ls -al {} ; Tüm setuid dosyalar
cat setuid-files-enum.txt 2>/dev/null | grep -i -E
'vi|awk|perl|find|nmap|man|more|less|tcpdum
p|bash|sh$|vim|nc$|netcat|python|ruby|lua|irb
' | grep -v -E 'chsh|device'
Shell escape imkanı veren setuid dosyalar
find / -uid 0 -perm -2002 -type f -exec ls -al {} ; Sahibi root olan other tarafından
yazılabilir setgid dosyalar
find / -perm -2002 -type f -exec ls -al {} ; Other tarafindan yazılabilir tum setgid
dosyalar
find / -perm -2000 -type f -exec ls -al {} ; setgid işaretli tüm dosyalar
SETUID VE SETGID ERİŞİM HAKLI DOSYALAR
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
find / > dirlist-enum.txt Daha sonra kullanmak üzere dizin ve
dosya listesinin oluşturulması
grep -i -E 'conf$|config$|cnf$' dirlist-enum.txt >
conf-files-enum.txt
Sonu conf, config ve cnf ile biten
dosyaların listesi
grep -i -E 'backup$|bck$|bak$|.old.*$' dirlist-
enum.txt > backup-files-enum.txt
Sonu backup, bck, bak, old ile biten
dosyaların listesi
grep -i -E 'inc$' dirlist-enum.txt > inc-files-enum.txt Sonu inc ile biten dosyaların listesi
grep -i -E 'my.cnf$' dirlist-enum.txt | xargs -r ls -al my.cnf adlı dosyaların listesi
grep -i -E 'my.conf$' dirlist-enum.txt | xargs -r ls -
al
my.conf adlı dosyaların listesi
DOSYA VE İÇERİK TARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
cat conf-files-enum.txt | xargs grep -i -E 'pass
=|passwd =|pwd =| password =|user =|username
=|pass=|passwd=|pwd=|password=|user=|usern
ame=|mysql_connect|mysql_select_db'
conf dosyaları içinde geçen password ve
username satırları
cat inc-files-enum.txt | xargs grep -i -E 'pass
=|passwd =|pwd =| password =|user =|username
=|pass=|passwd=|pwd=|password=|user=|usern
ame=|mysql_connect|mysql_select_db'
inc dosyaları içinde geçen password ve
username satırları
DOSYA VE İÇERİK TARAMA
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
find / -name "id_dsa*" -o -name "id_rsa*" -o -
name "known_hosts" -o -name "authorized_hosts"
-o -name "authorized_keys"
ssh anahtar ve anahtar dizinlerinin listesi
find /etc -iname hosts.equiv -exec ls -la {}
2>/dev/null ; -exec cat {} 2>/dev/null ;
hosts.equiv dosyasının erişim hakkı ve
görebiliyorsak içeriği
find /home -iname *.rhosts -exec ls -la {}
2>/dev/null ; -exec cat {} 2>/dev/null ;
Görebildiğimiz tüm home dizinleri altında
varsa rhosts dosyaları
find /etc/init.d/ ! -uid 0 -type f 2>/dev/null |xargs
-r ls -la
root kullanıcısına ait olmayan ancak init.d
dizini altında bulunan dosyaların listesi
find /etc/rc.d/init.d ! -uid 0 -type f 2>/dev/null
|xargs -r ls -la
root kullanıcısına ait olmayan ancak
rc.d/init.d dizini altında bulunan
dosyaların listesi
cat /etc/fstab Mount konfigürasyonu (reiserfs gibi
sıradışı file system görürseniz exploit
etmeyi deneyin)
DİĞER BİLGİLER
BİLGİ TOPLAMA [ENUMERATION]
ENUMERATION KOMUT ÖRNEKLERİ
ps aux | awk '{print $11}'|xargs -r ls -la 2>/dev/null
|awk '!x[$0]++'
Çalışan proseslerin imajları ve bunlara
erişim hakları
mysqladmin -uroot -proot version Mysql’e root - root erişim bilgileriyle
erişebiliyor muyuz
mysqladmin -uroot version Mysql’e boş parola ile root olarak
erişebiliyor muyuz
mysql --version Versiyon bilgileri
psql –V Versiyon bilgileri
apache2 -v 2>/dev/null; apache2ctl -M
2>/dev/null; httpd -v 2>/dev/null; apachectl -l
2>/dev/null
Versiyon bilgileri
perl -v; java -version; python -version; ruby -v Versiyon bilgileri
DİĞER BİLGİLER
TİPİK SALDIRI
YÖNTEMLERİ
[YANAL HAREKET]
YANAL HAREKET VE DAHA FAZLA BİLGİ TOPLAMA
• PSExec
• WMI
• Powershell - WinRM
• v.d. şekillerde diğer sistemlere erişme (terminal servisi, ssh,
veritabanı, v.b.)
TİPİK SALDIRI YÖNTEMLERİ
TİPİK SALDIRI YÖNTEMLERİ
YANAL HAREKET VE DAHA FAZLA BİLGİ TOPLAMA
Ele geçirilen sistem kullanıcı adı ve parola bilgileri ile:
• CrackMapExec (CME)
• NMAP PSExec spray - nmap -p139,445 --
script=smb-psexec --script-
args=smbuser=kullanici,smbpass=par01a <target>
• spraywmi.py Python script'i
gibi araçlarla elde ettikleri bilgilerle daha fazla sisteme
erişmeye çalışabilirler.
Elbette böyle bir tarama izlenen bir ortamda dikkat
çekecektir.
SALDIRGANLARIN DAHA FAZLA BİLGİYE
ERİŞME İMKANLARI
Ele geçirilen sistemler üzerinde saklanan erişim bilgilerini
ele geçirebilirler, örneğin:
• Tarayıcılar (browser) tarafından saklanan erişim
bilgileri (ör: post/multi/gather/firefox_creds ve
post/windows/gather/enum_chrome Metasploit
post exploitation modülleri ile)
• Winscp erişim bilgileri (ör:
post/windows/gather/enum_winscp_pwds
Metasploit post exploitation modülü ile)
• v.d.
WINDOWS
ALTYAPISINDAN
KAYNAKLANAN
ZAYIFLIKLAR
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Windows Authentication Protokolleri ile İlgili Temel
Konular
• Parola hash'leri
• Doğrulama protokolleri
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Hash Problemleri: LM Hash'lerinin Zayıflığı
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Hash Problemleri: LM Hash'lerinin Zayıflığı
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Protokol Problemleri: Karşılıklı Kullanıcı Doğrulama
Olmaması (Sahte Sunucu)
Sabit 8 byte'lık Challenge değeri 1122334455667788
için hazır Rainbow table'ların bulunması
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Protokol Problemleri: Reflective ve Relay Saldırıları
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Protokol zayıflıkları için önerilen çözüm - Kerberos
• Önerilen çözüm (elbette Domain ortamları için)
Kerberos kullanıcı doğrulama protokolüdür.
• Ancak bu protokolün de içsel problemleri olduğunu
göreceğiz.
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Pass The Hash (PTH) Saldırıları
Bu konuyu tartışabilmek için önce SAM dosyasındaki
parola hash'lerinin ve bellekteki parola hash'leri ile açık
(cleartext) parolaların elde edilmesini konuşalım.
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
SAM dosyasından Windows parola hash'lerinin elde
edilmesi
• Her Windows sunucu ve bilgisayarının lokal
kullanıcılarının parola hash'leri SAM dosyasında
bulunur.
• Bu dosyaya çalışma anında erişim izni verilmez. Ancak
DLL injection ve disk'e raw erişim sayesinde bu
engeller atlatılabilir. Ayrıca bilgisayar diski kriptolu
değilse bilgisayar farklı bir işletim sistemi'ne (ör:
Linux) boot edilerek veya disk farklı bir bilgisayara
takılarak SAM dosyası elde edilebilir.
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
SAM dosyasından Windows parola hash'lerinin elde
edilmesi
• SAM dosyasındaki hash'ler kriptoludur, ancak kripto
anahtarı da SYSTEM dosyası içindedir. Dolayısıyla bu
dosyaya erişilmesi halinde parola hash'leri elde
edilebilir.
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
Bellekten hash ve cleartext (açık) parolaların elde
edilmesi
• Parola hash'lerinin ve dahası çeşitli güvenlik alt
sistemleri tarafından ihtiyaç duyulan kriptolu (yani
decrypt de edilebilen) normal parolaların bellekten
elde edilmesi "Mimikatz" aracı ile mümkün olmuştur.
• Bu aracın yöntemlerini uygulayan diğer araçlar da
mevcuttur:
• Invoke-Mimikatz (powershell)
• Windows Credential Editor (WCE)
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
Bellekten hash ve cleartext (açık) parolaların elde
edilmesi
Decrypt edilebilen parolaları bellekte saklayan güvenlik
alt sistemlerinden bazıları aşağıdaki gibidir:
• TsPkg - Security Service Provider (SSP) for Terminal
Services: Terminal sunucularına Single Sign On (SSO)
fonksiyonalitesi kazandırır.
• Wdigest – Digest SSP Internet Explorer ve IIS erişimlerinde
erişim bilgilerinin MD5 hash'i veya message digest olarak
iletilmesini sağlar.
• CredSSP – Uygulamanın kullanıcısının erişim yetkilerini
uzaktaki servislere delege etmesi için kullanılır.
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
Bellekten hash ve cleartext (açık) parolaların elde
edilmesi
• Parola hash ve cleartext (açık) hallerinin bellekte
bulunması için Interaktif Logon gerçekleştirilmesi
gerekmektedir.
• Interaktif Logon Türleri:
• Konsoldan (fiziksel olarak) logon olma
• Terminal servisi veya VNC gibi arayüzlerden logon olma
• Runas komutu ile farklı bir kullanıcı olarak komut satırından
komut çalıştırma
• PSExec aracını kullanırken –u seçeneği ile farklı bir kullanıcı
olarak diğer bilgisayara erişme
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
Bellekten hash ve cleartext (açık) parolaların elde
edilmesi
• Network Logon tipi erişimlerde bellekte parola hash
ve açık halleri görülmemektedir.
• Bunlara örnek olarak ağ paylaşımlarına bağlanma ve "-
u" opsiyonu kullanmadan PSExec kullanımı verilebilir.
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
Bellekten hash ve cleartext (açık) parolaların elde
edilmesi
• Anti-Virüs yazılımları tarafından iyi bilinen Mimikatz'in
kullanılmasından kaçınmak için "procdump" adlı ve
Microsoft imzalı Sysinternals aracı ile LSASS.EXE
prosesinin adres alanı indirilebilir.
• Daha sonra dump edilen bellek verisi Mimikatz veya
Volatility ile analiz edilerek parola hash ve açık
değerlerine ulaşılabilir.
• https://medium.com/@ali.bawazeeer/using-mimikatz-to-get-
cleartext-password-from-offline-memory-dump-76ed09fd3330
SAM DOSYASINDAN VE BELLEKTEN
PAROLA HASH'LERİNİN ELDE EDİLMESİ
SAM dosyasından Windows parola hash'lerinin elde
edilmesi
• Parola hash'lerini dump edebilen ve başka işlevleri de
olan çok sayıda araç mevcuttur:
• Mimikatz (exe)
• Invoke-Mimikatz (powershell)
• Meterpreter payload'u "hashdump" fonksiyonu
• pwdump ve benzerleri
LM ve NTLM KULLANICI DOĞRULAMA
PROTOKOLLERİNDEKİ ZAYIFLIKLAR
Pass The Hash (PTH) Saldırıları
• LM, NTLM ve domain yapılarındaki Kerberos
protokollerinde (Kerberos'a birazdan değineceğiz)
anahtar olarak kullanıcı parolası değil de kullanıcının
parola hash'i kullanıldığından hash bilgisi elde edilen
bir kullanıcının parolası offline olarak kırılamasa bile
hesabına erişilebilmektedir.
• Örneğin Metasploit'in PSExec modülü kullanıcı
parolası yerine PTH yöntemi ile kullanıcı parola hash'i
kullanılarak erişimi desteklemektedir.
(IMPERSONATION) DELEGATION
TOKEN'LARIN ÇALINMASI
Access Token'lar Nedir?
• 2 tür Access Token vardır:
• Primary Access Token: Bir proses'i çalıştıran
kullanıcının haklarını taşıyan token'dır.
• Impersonation Access Token: Bu token ile istemci
sunucu mimarisinde çalışan servislerde sunucu
istemci proses'in erişim haklarını taşır.
• Delegation Token'lar impersonation token'ların
sunucunun farklı bir bilgisayarda olduğu
durumlarda kullanılan özel bir türüdür.
(IMPERSONATION) DELEGATION
TOKEN'LARIN ÇALINMASI
Token'ın Çalınması Ne Demektir?
• Hedef sistem üzerinde System kullanıcı haklarına
ulaşan bir saldırgan sistemdeki diğer kullanıcılara ait
olan token'ları çalabilir.
• Bu token sayesinde domain admin yetkilerine sahip
bir kullanıcının yerine geçilebilir.
• Bu işlem için "incognito.exe" veya Meterpreter'in
"incognito" uzantısı kullanılabilir.
(IMPERSONATION) DELEGATION
TOKEN'LARIN ÇALINMASI
Token'ın Çalınması Nasıl Engellenir?
WINDOWS KERBEROS UYGULAMASININ
SAĞLADIĞI İMKANLAR
Golden Ticket / Silver Ticket (Pass The Ticket – PTT)
WINDOWS DOMAIN KULLANICI
HASH'LERİNİN ELDE EDİLMESİ
Domain Parola Hash'lerinin Elde Edilme Yolları
• "vssadmin" aracı ile Volume Shadow Copy alarak.
• PowerSploit NinjaCopy powershell script'i ile disk'e raw
formatta erişerek (bu şekilde NTDS.dit dosyasına erişim
kontrolleri aşılmaktadır).
• Mimikatz'in DCSync özelliği kullanılmak suretiyle Backup
Domain Controller gibi davranılarak (bu şekilde reversible
tutulan parolaların cleartext formatta da ele geçirilmesi
mümkün olmaktadır).
• Tüm bu işlemler için doğal olarak domain admin
kullanıcılarından birisinin parolası çalınmış olmalıdır.
WINDOWS DOMAIN KULLANICI
HASH'LERİNİN ELDE EDİLMESİ
NTDS.dit'in Çalınmasının Diğer Sonuçları
• NTDS.dit dosyası herhangi bir şekilde elde edilmiş bir
domain'de olabilecek diğer risklere örnekler aşağıdaki
gibidir:
• PC v.d. disklerin kriptolanması için kullanılmış ve
Domain Controller'da yedeklenmiş Bitlocker anahtarları
(https://blog.quarkslab.com/quarks-pwdump.html)
• LAPS (Local Administrator Password Solution) lokal
administrator kullanıcı parolaları (değiştirme aralıkları
kısa ise kısa bir süre kullanılabilecektir)
GOLDEN TICKET
Golden Ticket Nedir?
• Domain admin olmuş bir saldırganın domain parola
hash'lerini elde etmek istemesinin en önemli
nedenlerinden birisi KRBTGT kullanıcısının parola hash'ini
elde edebilecek olmasıdır.
• Bu kullanıcı tüm TGT'leri imzalayan kullanıcı olduğundan
saldırgan kendisine uzun süreli (ör: 10 yıl) bir TGT üretebilir.
• Bu kullanıcının gerçekte var olması bile gerekmez, Domain
Admins grubuna (RID-512) dahil olması yeterli olacaktır.
Pek çok sistem log'unda (ör: MSSQL Sunucusunda) kullanıcı
adı olarak da verilen kullanıcı adı görünecektir.
GOLDEN TICKET
Golden Ticket'tan Nasıl Kurtulunur?
• Saldırganın ürettiği TGT'nin geçersiz olması için KRBTGT
kullanıcısının parolasının 2 defa sıfırlanması gerekir. 1 defa
sıfırlandığında eski parola ile ticket almış kullanıcıların
kesintiye uğramaması için eski parola sistem tarafından
hatırlanır.
• Öntanımlı olarak TGT geçerlilik süresi 10 saat'tir. Dolayısıyla
sistemde bir aksama olmaması için 2 sıfırlama arasında 10
saat beklenebilir.
SILVER TICKET
Silver Ticket Nedir?
• Bu yöntemde hedeflenen servise yönelik sahte bir Service Ticket
üretilmesi ve servise yetkisiz erişim sağlanması hedeflenir.
• Bunun için hedef servis kullanıcısının parola hash'inin elde
edilmiş olması gereklidir.
• Mimikatz ile şu bilgiler kullanılarak Silver Ticket üretilebilir:
Domain SID (whoami /user komutuyla elde edilebilir), Target
(hedef servisin SPN-Service Principle Name bilgisi, ör:
sql01.btr.local:1433) , Service (hedef servis, ör: MSSQLSvc), User
(var olması gerekmez) ve Group
KERBEROASTING
Kerberoasting Nedir?
• Bu yöntemde servis kullanıcılarının parolalarının kırılmasının
yanı sıra Silver Ticket üretmede olduğu gibi ilgili servise yönelik
alınan Service Ticket'ın (ST) içindeki kullanıcı bilgilerinin
değiştirilmesi de hedeflenebilir.
• Kerberoasting yöntemi ile Silver Ticket üretebilmek için Domain
Admin haklarına sahip olmak da gerekmez. Ancak servis
hesabının parolasının kırılabilecek kadar, yani bir sözlük
saldırısıyla tespit edilebilecek kadar zayıf olması gerekir.
• Kerberoasting için SPN bilgilerini ve Service Ticket elde etmek
için çeşitli VBS, Python (ör: Impacket) ve powershell (ör: Empire)
scriptleri mevcuttur. Daha sonra servis parolasının kırılması
gerekecektir.
KERBEROASTING
Kerberoasting'in Handikap'ı Nedir?
• Üretilen Service Ticket (ST) içindeki PAC (Privileged Access
Certificate) imzalarından KRBTGT tarafından imzalanan veri
doğru olmayacaktır (diğer imza servis hesabının parola hash'i ile
imzalandığından ve bu bilgiye sahip olduğumuzdan doğru
olacaktır).
• Ancak performans gerekçesiyle KRBTGT kullanıcısının imzası
genellikle kontrol edilmez. Bu nedenle önemli bir engel
olmayacaktır.
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WMI – Windows Management Instrumentation
• WMI altyapısı uzaktan WMI provider nesnelerine ve bunların
metodlarına erişim imkanı verir. Dolayısıyla bu metodların
sağladığı hem bilgi toplama (enumeration) hem de işlem
gerçekleştirme imkanlarına sisteme diğer şekillerde erişmeden
sahip olabiliriz.
• Ayrıca WMI'ın sağladığı Eventing imkanı ile belli durumlarda
tetiklenen backdoor'lar kurulabilir. WMI'ın sağladığı bu imkan
diske (dosya oluşturma anlamında) değmeden faaliyet gösterme
imkanı vermektedir. Hacker'lar tarafından bu duruma LIVING
OFF THE LAND adı verilmektedir.
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WMI – Windows Management Instrumentation
ARAÇLAR
• Powershell: WMI erişimleri için en sık kullanılan araç powershell
commandlet'leridir.
• wmic.exe: Tüm Windows bilgisayarlarda mevcut olduğu için
saldırgan açısından daha az dikkat çekmeye yardımcı olur.
• wmiexec.py: Impacket Python modülünün örnek WMI erişim
aracı.
• Metasploit wmiexec modülü.
• Linux üzerinde çalışan wmic, pth-wmic, wmis, pth-wmis (PTH
yapabilen wmis) araçları.
• v.d. scriptler.
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WMI Backdoor İmkanı
• WMI Eventing altyapısı sayesinde bir persistence (kalıcılık)
imkanı kazanılabilir.
• Kalıcı (persistent) bir event kaydı (subscription) için aşağıdaki üç
faktöre ihtiyaç vardır:
• Event Filter: Bir kullanıcının logon olması, sistemin yeniden
başlatılması veya farklı bir olay tarafından tetiklenecek tanım
• Event Consumer: Filter tetiklendiğinde gerçekleştirilecek
faaliyet
• Filter to Consumer Binding: Filter ve Consumer'ı birbirine
bağlayan tanım
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WMI Backdoor İmkanı
• Event Consumer türleri:
• LogFileEventConsumer – Olay verisini belli bir log dosyasına
yazar
• ActiveScriptEventConsumer – Bir gömülü VBScript veya
Jscript çalıştırır
• NTEventLogEventConsumer – Olay verisini bir Windows
event kaydı olarak yazar
• SMTPEventConsumer – Olay verisini e-posta ile gönderir
• CommandLineEventConsumer – Bir komut satırı uygulaması
çalıştırır
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WMI Backdoor İmkanı – Bir Örnek
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
WinRM – Windows Remote Management
• WinRM Powershell Remoting (Powershell komutlarını uzaktaki
bilgisayarın konsolundaymış gibi çalıştırma imkanı) ve CIM ile
başlayan WMI provider sınıflarını çalıştırma amaçları ile
kullanılabilir.
• HTTP (TCP 5985) veya HTTPS (TCP 5986) protokolleri ile SOAP
mesajları ile erişilebilir.
• Açık olması halinde WMI gibi lateral movement amacıyla
kullanılabilir, ancak genellikle öntanımlı olarak kapalıdır.
• Uzaktan psexec, wmiexec gibi bağlantılarla etkinleştirilebilir.
https://pentestlab.blog/2018/05/15/lateral-movement-winrm/
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
DCOM – Distributed Component Object Model
• DCOM Microsoft'un dağıtık kod altyapısının bilgisayarlar
arasında kullanılmasını destekleyen mimarisidir.
• Bu altyapı kullanılarak bir bilgisayardaki bir process bir başka
bilgisayardaki COM nesnesine (yapılan bazı registry tanımları
sonrasında) erişerek kullanabilir.
• Powershell veya farklı bir uygulama dili kullanılarak
Excel.Application, MMC20.Application, ShellWindows,
ShellBrowserWindow, Visio.Application, Visio.InvisibleApp ,
Outlook.Application, Word.Application gibi application id'leri ile
farklı bir bilgisayar üzerinde komut çalıştırılabilir.
https://www.cybereason.com/blog/dcom-lateral-movement-techniques
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
Named Pipe İmkanı
• Named Pipe'lar anonim pipe'larda ("|") olduğu gibi okuma ve
yazma imkanları verirler ve (Windows işletim sistemi için) SMB
protokolü üzerinden de erişilebilirler.
• Uzaktan kötüye kullanım imkanı olma ihtimali düşük olsa da
zararlı yazılımlar tarafından ve saldırganların lateral movement
çabalarının bir parçası olan backdoor oluşturmak için sıklıkla
kullanılırlar.
• Yapılan erişimler SMB portlarına yapılacağından backdoor zararlı
yazılımı tarafından açılacak bir port kadar dikkat çekmezler.
WINDOWS AĞLARIYLA GELEN LATERAL
MOVEMENT İMKANLARI
Diğer Bilgisayarlarda İşlem Yapma İmkanı Veren Diğer
Komutlar
• SCHTASKS: Uzaktaki bilgisayar üzerinde zamanlı iş
tanımlama
• SC: Uzaktaki bilgisayar üzerinde servis tanımlama
DOMAIN CONTROLLER ÜZERİNDEKİ
SYSVOL PAYLAŞIMINDAN VERİ SIZMASI
• DC sunucuları üzerindeki SYSVOL dizinlerinde yer
alabilecek script'lerin içinde kullanıcı erişim bilgileri yer
alabilir.
WINDOWS APPLOCKER KONTROLÜNÜ
AŞMA İMKANLARI
• Windows ile gelen ve Powershell.exe gibi çalıştırılabilir
kodların hash değerleri ile yapılan uygulama çalıştırma
engelleme kontrolü aynı işlevi sağlayan farklı
uygulamalar ile aşılabilir.
• https://www.roelvanlisdonk.nl/2010/03/16/how-to-execute-
powershell-scripts-from-c-with-an-execution-policy-unrestricted/
• https://pentestlab.blog/2017/05/11/applocker-bypass-regsvr32/
• https://pentestlab.blog/2017/05/29/applocker-bypass-msbuild/
• https://pentestlab.blog/2017/06/16/applocker-bypass-msiexec/
• Metasploit modülü
exploit/windows/misc/regsvr32_applocker_bypass_server
ÇÖZÜM
SÜREÇ
1901 yılında kurulan NIST 1987 tarihli “Computer Security Act” ile ABD kamu
kurumlarına yönelik standartların geliştirilmesi için görevlendirilmiştir. NIST
bunun üzerine Special Publication 800 serisini geliştirmeye başlamıştır.
Security Operations Center – SOC
Ana Tema: İzleme
7/24 telekom altyapılarını izleyen NOC konseptinin siber
güvenlik alanında uygulamasıdır.
ORGANİZASYONEL TANIMLAR
Computer Emergency Response Team – CERT
Ana Tema: Koordinasyon ve Bilgilendirme
2 Kasım 1988 yılında ilk internet worm’larından olan Morris zararlı yazılımı
Cornell Üniversitesi yüksek lisans öğrencisi olan Robert Tappan Morris
tarafından harekete geçirilmiştir. Bu kişi aynı zamanda o dönemde NSA’de
çalışan kriptoloji uzmanı Robert Morris’in oğludur. İlk saldırı MIT üniversitesi
sistemlerinden başlatılmıştır. Zararlının amacı bu olmasa da sistemlerin
defalarce enfekte olmaları sonucu sistemler kesintiye uğramıştır. Bu saldırı
1986 yılında yayınlanmış olan Computer Fraud and Abuse Act kapsamındaki
ilk mahkumiyetle de sonuçlanmıştır. Bu gelişme üzerine DARPA fon desteği
sağlayarak Carnegie Mellon Üniversitesi bünyesinde Computer Emergency
Response Team / Coordination Center – CERT/CC kurdurmuştur.
ORGANİZASYONEL TANIMLAR
ORGANİZASYONEL TANIMLAR
Computer Security Incident Response Team – CSIRT
Ana Tema: Olay Müdahalesi
Olay gerçekleştikten sonra müdahale sürecini yöneten ve
gerçekleştiren çok disiplinli ekiplere verilen addır. CISO veya
daha üstü seviyede bir ekip lideri veya yönetici sponsor himaye
ve yönetiminde olmalıdır. Siber olayın halkla ilişkiler, insan
kaynakları, hukuki mesuliyetler boyutları için gerekli üyeler CSIRT
içinde geçici de olsa bulunmalıdır.
Incident Response Plan – IRP çalışmaları önceden yapılmalıdır.
ORGANİZASYONEL TANIMLAR
GÜVENLİK YÖNETİMİNİN ANA PARÇALARI
YÖNETİŞİM
GÜVENCE
OPERASYON
Yönetişim katmanının ve güvenlik organizasyonu
içindeki iletişimin önemi
KALECİ VE TAKIMIN KALANI ARASINDAKİ
İLİŞKİLER
Yönetişim katmanının ve güvenlik organizasyonu
içindeki iletişimin önemi
• Mimari değişiklikler ve dönüşüm projeleri hakkında olay tespit
ve müdahale ekibinin bilgilendirilmesi, görüşlerinin alınması
• Denetim ve sızma testi sonuçlarına olay tespit ve müdahale
ekibinin de erişmesi ve incelemesi
• Tespit edilen olaylar sonrasındaki post-mortem analiz
raporlarının disiplinli bir biçimde hazırlanması ve yönetişim ekibi
tarafından risk analizi, düzeltici faaliyet planlama v.d.
aktivitelerde ciddiyetle ele alınması
• Güvenlik anahtar performans göstergelerinin (KPI) yönetimi
KALECİ VE TAKIMIN KALANI ARASINDAKİ
İLİŞKİLER
Yönetişim katmanının ve güvenlik organizasyonu
içindeki iletişimin önemi
• Olay tespit ve müdahale ekibine çok kullanılan lokal exploit
açıklıkları ve remote açıklıklarla ilgili bilgi sahibi olabilmeleri için
yama geçilme bilgilerinin sağlanması (veya bu bilgileri çekecek
mekanizmaları kurabilmelerine imkan verilmesi)
• Kırmızı takım tatbikat ve çalışmalarının yürütülmesi, izleme
ekiplerinin bu çalışmalara hem (ofansif tarafta) katılımı hem de
izleme faaliyetlerinin etkinliklerinin ölçülmesi
• Ofansif görevlerde çalışmış uzmanların (sızma testi uzmanları)
izleme ekiplerine geçişlerine imkan verilmesi
• Tespit ve müdahale ekibinin Tehdit İstihbaratı ile desteklenmesi
KALECİ VE TAKIMIN KALANI ARASINDAKİ
İLİŞKİLER
Playbook’lar (Oyun Taktik Planları)
• Oltalama sosyal mühendislik saldırısı
• Zararlı yazılım bulaşması
• DDOS saldırısı
• Web uygulama saldırısı
• Personelin veri sızdırması, v.d.
SÜREÇSEL HAZIRLIK AŞAMASI
Örnek oltalama sosyal
mühendislik saldırısı playbook
SÜREÇSEL HAZIRLIK AŞAMASI
TESPİT ET
SÜREÇSEL HAZIRLIK AŞAMASI
ANALİZ ET
Örnek oltalama sosyal
mühendislik saldırısı playbook
SÜREÇSEL HAZIRLIK AŞAMASI
SINIRLANDIR / TEMİZLE
Örnek oltalama sosyal
mühendislik saldırısı playbook
SÜREÇSEL HAZIRLIK AŞAMASI
GERİ DÖNDÜR
Örnek oltalama sosyal
mühendislik saldırısı playbook
SÜREÇSEL HAZIRLIK AŞAMASI
OLAY SONRASI DEĞERLENDİR
Örnek oltalama sosyal
mühendislik saldırısı playbook
CRIME PREVENTION THROUGH ENVIRONMENTAL
DESIGN – CPTED
ÇEVRESEL TASARIM VASITASIYLA SUÇU ENGELLEME
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyi analizi ve güvenlik alanlarının
(domain’lerinin) tespiti
• Kurumsal veri analizi
• Kurumsal veri envanteri, yaşam döngüleri ve saklanma alanlarının
belirlenmesi
• Kurumsal veri sınıflarının ve korunma ihtiyaçlarının belirlenmesi
• Hizmet sürekliliği açısından kritik sistem, ağ altyapısı ve
uygulamaların belirlenmesi
• Uygulama katmanında iş etki analizi gerçekleştirilerek kritik uygulamalar
ve destekleyen sistemlerin belirlenmesi
• Belirlenen uygulamalar ve sistemlerle ilgili mevcut yedekleme
altyapılarının tespiti
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyi analizi ve güvenlik alanlarının
(domain’lerinin) tespiti
• Ağ topolojisinin değerlendirilmesi
• Kablosuz ağ bağlantıları ve kullanıcı profilleri
• VPN bağlantıları ve kullanıcı profilleri
• Dışarıdan içeriye doğru extranet bağlantıları
• Şubeler ve uzak lokasyonlar
• İnternet’e açık servisler
• İnternet’e açık uygulamalar ve kullanıcı profilleri
• Sunucu ve kritik verilerin bulunduğu ağ segment’leri, bu segmentlere erişim kontrolleri
• Felaket kurtarma merkezi bağlantıları
• Kullanıcı ağ segmentleri
• Yazıcı ağ segmentleri
• VOIP ağ segmentleri
• Kullanıcı bilgisayar, laptop ve akıllı cihazları envanteri
• Yoğun ziyaretçi trafiği olan veya off-shore’da bulunan cihazlar (ör: kiosk, ATM, v.d.)
• Çeşitli katmanlarda kullanılan bulut hizmetleri ve hosting hizmeti alınan durumlar
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyi analizi ve güvenlik alanlarının
(domain’lerinin) tespiti
• Kurum dışı ile paylaşılan veriler ve üçüncü taraf güvenliği ile ilgili
endişelerin belirlenmesi
• İş birimlerinden ve BT operasyon birimlerinden veri paylaşılan üçüncü tarafların
listesinin alınması
• Her bir üçüncü taraf ve paylaşım durumu için gerekli veri koruma ihtiyaçlarının
belirlenmesi
• Dışarıdan bakım hizmeti alınan, kiralanan ve yerinde veya
uzaktan erişilen varlıkların belirlenmesi
• Sunucular
• Yazıcılar
• PC’ler
• Altyapı donanımları (UPS, telefon santrali v.d.)
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyi analizi ve güvenlik alanlarının
(domain’lerinin) tespiti
• Güvenli yazılım ve sistem geliştirme süreçlerinin yeterliliklerinin
değerlendirilmesi
• Yukarıdaki değerlendirmelerin periyodik (en az yılda 1 defa)
olarak tekrar edilmesi
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyinin daraltılması ve saldırı ihtimalinin
azaltılması
• Erişen kullanıcı profiline uygun olarak ağ bölümlemesi
mimarisinin kurulması, eksikliklerin giderilmesi için hemen
uygulanabilecek kontrollerin uygulanması, diğerleri için proje
planlarının oluşturulması
• HTTP(S), DNS, Windows Update ve diğer servisler için dışarı
yönlü trafiğin belirli sunucularla kısıtlanması
• İçeriden dışarıya tüm uç noktalar ve sunucular için filtreleme
uygulanması
• Uç noktalar ve geçit sunucuları üzerinde (Web Proxy, SMTP) DLP
çözümlerinin devreye alınması
TEKNİK HAZIRLIK AŞAMASI
Tehdit yüzeyinin daraltılması ve saldırı ihtimalinin
azaltılması
• Uç nokta ve kurum dışına çıkan cihazlar üzerinde
uygulanabilecek donanımsal port kısıtlama ihtiyaç ve
imkanlarının değerlendirilmesi
• Kriptografik kontrol uygulama ihtiyaçlarının belirlenmesi (uç
noktalar, akıllı cihazlar, veri iletim ve depolama ortamları için)
• Kurum dışı ile veri paylaşılan durumları minimize etme, veriyi
paylaşmak yerine uygulama üzerinden verilere erişim imkanı
sağlama, gerekli durumlarda kurum verilerini veri paylaşılan
taraflarda izole tutma imkanlarını araştırma
TEKNİK HAZIRLIK AŞAMASI
Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım
ve geliştirme planlamasının yapılması
• Sunucular
• Windows sunucular için güvenlik ve gerekli ise ek (ör:
sysmon, dhcp, dns, veritabanı, kritik uygulama, v.d.) log
toplama ihtiyaç ve imkanlarının değerlendirilmesi
• Unix / Linux sunucular için güvenlik log toplama ihtiyaç ve
imkanlarının değerlendirilmesi
• Veritabanı sunucuları için özel log toplama ihtiyaç ve
imkanlarının değerlendirilmesi
• Kritik sistemler için File Integrity Monitoring (FIM) ihtiyaç ve
imkanlarının değerlendirilmesi
TEKNİK HAZIRLIK AŞAMASI
Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım
ve geliştirme planlamasının yapılması
• Network cihazları
• Flow verisi toplama ihtiyaç ve imkanlarının değerlendirilmesi
• Network cihazları üzerinde yapılan işlemlerin (AAA sunucu
imkanları kullanılarak) loglama ihtiyaç ve imkanlarının
değerlendirilmesi
• Firewall’lar
• Ağ segment ihtiyaçlarına uygun olarak bölümleme
gerçekleştirebilecek firewall ihtiyaç ve imkanlarının
değerlendirilmesi
• Firewall’lar üzerindeki drop ve forward edilen paket loglama
ihtiyaç ve imkanlarının değerlendirilmesi
TEKNİK HAZIRLIK AŞAMASI
Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım
ve geliştirme planlamasının yapılması
• VPN geçitleri
• VPN bağlantı loglama imkanlarının değerlendirilmesi
• Uç noktalar ve güvenlik sunucuları
• Anti malware loglama imkanlarının değerlendirilmesi
• EDR çözümü ihtiyaç ve imkanlarının değerlendirilmesi
• DLP ihtiyaç ve imkanlarının değerlendirilmesi
• Fiziksel erişim kontrol cihaz ve sunucuları
• Dosya veya veritabanı bağlantısı ile fiziksel erişim loglama
imkanlarının değerlendirilmesi
TEKNİK HAZIRLIK AŞAMASI
Situational Awareness
OLAY TESPİT VE MÜDAHALE EKİBİNİN
DURUMSAL FARKINDALIĞININ KORUNMASI
Güvenlik mimarisinin sürekliliği için proje yönetim
sürecinin düzenlenmesi
• Kurumun mevcut genel ve BT proje yönetim süreçleri içine
önleyici ve tespit edici güvenlik kontrol ihtiyaçlarının tespiti,
uygulanmasının takibi ve izleme süreçlerine dahil edilmesi için
gerekli düzenlemelerin yapılması
• Değişiklik yönetim sürecinde otorizasyona tabi olmadan
herhangi bir değişikliğin yapılmasının, test v.b. amaçlarla yeterli
güvenlik ve sıkılaştırma yapılmadan yeni bir sistemin ağa
sokulmasının engellenmesi
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Sistem sıkılaştırma prosedürleri
• Sunucu, PC, ağ cihazı v.d. altyapılar bazında özellikle çok
kurulumu yapılan sistemler için sıkılaştırma (gereksiz servislerin
kapatılması, parola, güncelleme ve loglama politikalarının
uygulanması, güvenlik çözümlerinin – anti malware, DLP, EDR,
v.d. – kurulması)
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Envanter ve güncelleme takibi
• Güvenilir envanter takip dosya, liste ve sistemlerinin
belirlenmesi ve periyodik olarak gözden geçirilmesi
• Periyodik ağ taramaları (filtreleme kuralları gözde tutularak
gerekli ağ segmentleri içinden) ve merkezi yönetim
sunucularından alınacak listeler ile dokümante edilmiş envanter
ile fiili envanterin karşılaştırılması
• Log kayıtlarından tespit edilebilecek ağa yeni cihaz v.b. bağlantı
durumlarının periyodik olarak gözden geçirilmesi ve dokümante
edilmiş envanter ile karşılaştırılması
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Erişim kontrol matrisinin sürekli gözden geçirilmesi ve
yüksek yetkili kullanıcı hesaplarının / gruplarının
merkezi olarak izlenmesi
• Erişim kontrol matrislerinin kaynaklarının belirlenmesi
• Yüksek yetkili kullanıcı listesinin oluşturulması
• Yüksek yetkili kullanıcı erişim bilgileri log kaynaklarının
belirlenmesi ve gerekli alarm durumlarının (yani anormal erişim
durumlarının) belirlenmesi
• Yüksek yetkili kullanıcı grup listesinin oluşturulması
• Yüksek yetkili kullanıcı gruplarına ekleme loglarının
kaynaklarının belirlenmesi ve alarm kurallarına eklenmesi
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Denetim, zafiyet tarama ve pentest raporlarından
faydalanma
• Denetim raporlarından tespit edilen süreç bulgularının izlenmesi
ve bunlara uygun olarak izleme stratejilerinin yeniden
değerlendirilmesi
• Zafiyet tarama ve pentest rapor bulgularının izlenmesi ve
bunlara uygun olarak izleme stratejilerinin yeniden
değerlendirilmesi
• Bulgu ve düzeltici faaliyet kayıtlarındaki ilerlemelerin izlenmesi
ve gecikilen alanlarla ilgili endişelerin gerekli yöneticilere
iletilmesi, gerekli ise izleme stratejilerinin yeniden
değerlendirilmesi
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Denetim izi (audit log) ayarlarının belirlenmesi ve
izlenmesi
• Güvenlik izleme stratejisini destekleyecek log konfigürasyon
ihtiyaçlarının belirlenmesi ve uygulanması
• Periyodik olarak (mümkünse) uzaktan ve yerinde log ayarlarının
izlenmesi için gerekli yöntem ve süreçlerin geliştirilmesi ve
uygulanması
• Periyodik olarak log optimizasyonu yapabilmek amacıyla log
konfigürasyonlarında iyileştirmeye gidilmesi, gerekli noktalarda
filtreleme uygulanması
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
Öncül veya yan belirti olarak kapasite kullanım ve
kesinti takibi
• Web taramalarında web sunucu CPU ve bellek kullanımlarındaki
artış
• Yine web uygulama taramalarında gözlenen 400 ve 500 yanıt
kodlu hatalardaki artışlar
• Ağ trafiğinde artış
• Sunucu CPU ve bellek kullanımlarındaki artış (ör: crypto
currency miner uygulamalarının sistem kaynaklarını tüketmesi
sonucu)
• Servislere yönelik exploit denemeleri sonucunda yaşanabilecek
servis kesintilerinin izlenmesi
GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN
GEREKLİ SÜREÇLERİN UYGULANMASI
OLAY TESPİT VE
MÜDAHALE
TEMEL YETKİNLİK
VE ARAÇLARI
• Temel işletim sistemleri ve sunucuların güvenlik ihtiyaç ve
imkanlarına hakimiyet
• Ağ ve uygulama sızma testi ve temel saldırı teknikleri bilgileri
• Temel TCP/IP ve çok kullanılan protokol bilgileri
• Tersine mühendislik becerileri (PE dosya formatı, decompile ve
disassemble edebilme ve assembly analiz yetkinlikleri)
• Adli bilişim temel teknikleri bilgileri
OLAY TESPİT VE MÜDAHALE TEMEL
YETKİNLİKLERİ
• Yanal hareket (lateral movement) tekniklerine ve bıraktıkları
izlere hakimiyet
• SIEM ve log yönetim araçları ile bunların kullandıkları altyapılara
hakimiyet
• İzleme ve uzaktan müdahale araçları üzerinde entegrasyon ve
geliştirme yapabilme, ihtiyaca göre özel yazılımlar ve betikler
geliştirebilme
• Siber saldırılarda uygulanan yeni tekniklere ve yeni siber olay
tespit ve müdahale kavram ve araçlarına sürekli merak duyma
OLAY TESPİT VE MÜDAHALE TEMEL
YETKİNLİKLERİ
TEMEL ARAÇLAR
Alarm Üreten Araçlar
• Anti malware ve davranış tabanlı zararlı yazılım tespit çözümleri
• Endpoint Detection and Response – EDR çözümleri
• SIEM ve log yönetim yazılımları
• IPS / IDS çözümleri
• Web Application Firewall – WAF çözümleri
TEMEL ARAÇLAR
Log ve Oturum Verisi Üreten Araçlar
• Router ve Firewall’lar (flow verisi)
• AAA sunucular
• İşletim sistemi sunucuları
• Uygulama, veritabanı ve diğer servis sunucuları (DNS, DHCP,
veritabanı, v.d.)
Windows için
• Endpoint Detection & Response (EDR) çözümleri
• Sysmon [Applications and Services Logs > Microsoft > Windows > Sysmon >
Operational]
• Powershell Script Block Logging (Group Policy ile
aktifleştirilebilir) [Applications and Services Logs > Microsoft > Windows >
PowerShell > Operational]
Linux için
• auditd paketi
GÖRÜNÜRLÜK KAVRAMI [VISIBILITY]
• Konfigürasyon denetim ve zafiyet (vulnerability) tarama araçları
• Honeypot kullanımı ve darknet izleme
• Decompiler’lar ve disassembler’lar
• Zararlı yazılım dinamik analizi için sandbox ortamları
• Siber istihbarat bilgileri
DİĞER ARAÇLAR
• Veri sızıntıları (kredi kartı, müşteri verileri, v.d.)
• Benzer alan adları
• Sızan kullanıcı hesapları
• Güncel sosyal mühendislik ve dolandırıcılık senaryoları
• IP kara listeleri
SİBER İSTİHBARAT HİZMETLERİ (VE GÜVENLİK
ARAÇLARI İLE ENTEGRASYONU)
• Hacim, hız, çeşitlilik
• Cluster mimarisi – kaynak havuzu (resource pooling), yüksek
erişilebilirlik (high availability), kolay ölçeklenebilirlik (easy
scalability) ihtiyaçları
• Veriyi alma ve işleme (ingesting), verinin saklama ortamında
erişilebilir biçimde tutulması (persisting the data in storage),
verinin işlenmesi ve analizi (computing and analyzing data),
sonuçların görselleştirilmesi (visualizing the results)
• NoSQL, JSON
• Stream processing, in memory computing kavramları
BÜYÜK VERİ KAVRAMLARI VE LOG YÖNETİMİ
İLE İLGİLERİ
• Log verisini anlamlandırma ve zenginleştirme ihtiyacının nedeni
• Taxonomy – log türlerini ve kritikliklerini sınıflandırma
• Zenginleştirme – log kaynaklarının rollerini belirtme, IP
adreslerinden yola çıkarak coğrafi konum bilgisi ekleme
• Normalizasyon – farklı log kaynaklarındaki benzer alan isimlerini
standartlaştırma, aynı kullanıcıya ait farklı kullanıcı id’leri lookup
listesi kullanarak tek isim olarak belirtme
TEMEL LOG YÖNETİM KAVRAMLARI
Snort
iodine aracı ile yapılan DNS tünellemeyi tespit etme
alert udp any any -> any 53 (content:"|01 00 00 01 00 00 00 00 00
01|"; offset: 2; depth: 10; content:"|00 00 29 10 00 00 00 80 00
00 00|"; msg: "covert iodine tunnel request"; threshold: type
limit, track by_src, count 1, seconds 300; sid: 5619500; rev: 1;)
alert udp any 53 -> any any (content: "|84 00 00 01 00 01 00 00
00 00|"; offset: 2;depth: 10; content:"|00 00 0a 00 01|"; msg:
"covert iodine tunnel response"; threshold: type limit, track
by_src, count 1, seconds 300; sid: 5619501; rev: 1;)
ÖRNEK IDS KURALI
Yara
rule Stuxnet_Malware_2
{
meta:
description = "Stuxnet Sample - file
63e6b8136058d7a06dfff4034b4ab17a261cdf398e63868a601f77ddd1b32802"
author = "Florian Roth"
reference = "Internal Research"
date = "2016-07-09"
hash1 =
"63e6b8136058d7a06dfff4034b4ab17a261cdf398e63868a601f77ddd1b32802"
strings:
$s1 = "SystemRootSystem32hal.dll" fullword wide
$s2 = "http://www.jmicron.co.tw0" fullword ascii
condition:
uint16(0) == 0x5a4d and filesize < 70KB and all of them
}
ÖRNEK ZARARLI DOSYA TESPİT KURALI
• 3 dk. içinde aynı kullanıcı adı ile farklı sunuculara 10’dan fazla
başarılı veya başarısız erişim denemeleri yapılması.
• Port tarama yapan bir sunucudan bir başka sunucuya başarılı bir
logon olayı gerçekleştirilmesi.
• Aynı kaynak IP adresinden bir web sunucusuna yapılan isteklere
karşılık 3 dk. içinde 20’den fazla 404 statü kodlu yanıt
döndürülmesi.
ÖRNEK LOG ALARM VE SIEM KORELASYON
KURALLARI
• Dropper: Resources bölümünden veya uygulama içine
gömülmüş çalıştırılabilir kodları dosya sistemine yerleştirme
• Registry oluşturma: Sürekliliği (persistence) garanti altına almak
üzere belirli registry key’lerine değer yazma
• Servis oluşturma: Sürekliliği (persistence) garanti altına almak
üzere drop ettiği veya sonradan dışarıdan çektiği bir
çalıştırılabilir kod ile servis oluşturma
• Dışarı yönlü erişim: HTTP(S), DNS, ICMP v.d. protokoller içinden
tünelleme yöntemi ile dışarı kapı açma veya komuta kontrol
(command & control) sunucusundan emir alma
• Kodlanmış veya paketlenmiş kod dosyası formatında olma:
Tersine mühendisliği zorlaştırmak için encoding ve packing
metodları ile kendini gizlemeye çalışma
ZARARLI YAZILIM DAVRANIŞLARINA
ÖRNEKLER
• Dosya adı
• Dosya hash değeri
• Proses adı
• Servis adı
• Kullanıcı adı
• URL isteği
• DNS sorgusu
• Registry kaydı
• Belli bir string’i veya veriyi içeren dosyalar
• Belli API fonksiyonlarını import eden PE dosyaları, v.d.
INDICATOR OF COMPROMISE (IOC)
ÖRNEKLERİ Önemli: Hem dinamik hem de statik analizle
belirlenmesinde fayda vardır. İsimler rassal bir
biçimde de oluşturulabilir !
Hazır araçlar ürettikleri trafikte belirli karakteristik izleri
barındırırlar. Sıradan saldırganlar bu araçları genellikle öntanımlı
ayarları ile kullandıklarından tespitleri daha da kolaydır. Bunlara
örnek olarak şunları verebiliriz:
• Metasploit (öntanımlı reverse bağlantı portu olarak 4444 portunun
kullanımı)
• Psexec spray saldırılarında başarılı olanları tespit etmek için kullanılabilir
• Reverse lookup istekleri
• Netcat
• Tarama araçlarının karakteristik davranışları
• Nmap’in ICMP echo request’e (ping’e) yanıt vermeyen sunucuların TCP
80 portuna bir de SYN paketi göndermesi
• Nikto’nun taramalar için kullandığı User Agent başlığında Nikto adının
geçmesi
HAZIR SALDIRI ARAÇLARINI TANIMANIN
FAYDALARI
• Ben kimim ve grup üyeliklerim neler
• Sistem üzerindeki diğer kullanıcılar ve grup üyelikleri neler
• Dosyalar içinde komut satırından kelime arama
• Dosya ve dizin erişim haklarının komut satırından sorgulanması
• Servis ve task’ların listelenmesi
• Sistem bilgileri ve geçilmiş yama bilgilerinin listelenmesi
• Domain kullanıcılarının listelenmesi, v.d.
SIRADAN KULLANICILARIN KULLANMAYACAKLARI
KOMUTLARA ÖRNEKLER
• Yasal mevzuata uygun kanıt toplama
• Forensic kopyasının alınması ve kanıt hash’inin hesaplanması
• Kanıt orjinallerinin güvenli biçimde saklanması
• Logların mahkemede kabul edilebilirliği
• Disk mimarisi, silinen dosyalar, kullanılmayan disk alanları, dosya
son cluster’ları, dosya kazıma kavramları
• Güvenilen çalıştırılabilir dosyaların enfekte olmuş veya yabancı /
üçüncü parti dosyalardan ayrıştırılması
ADLİ BİLİŞİM TEMEL KAVRAMLARI
Windows Event Logları
WINDOWS LOG ALTYAPISI
Önemli Security Windows Event ID’lerine Örnekler
• 4624: An account was successfully logged on.
• 4625: An account failed to log on.
• 4720: A user account was created.
• 4740: A user account was locked out.
• 4732: A member was added to a security-enabled local group.
• 4946: A change has been made to Windows Firewall exception
list. A rule was added.
• 5025: The Windows Firewall Service has been stopped.
• 1102: The audit log was cleared.
WINDOWS LOG ALTYAPISI
SYSMON Logları
WINDOWS LOG ALTYAPISI
SYSMON Logları
SYSMON logları “Applications and Services
Logs/Microsoft/Windows/Sysmon/Operational” dosyasında saklanır.
SYSMON Event ID’leri:
• 1: Process creation
• 2: A process changed a file creation time
• 3: Network connection
• 4: Sysmon service state changed
• 5: Process terminated
• 6: Driver loaded
• 7: Image loaded
• 8: CreateRemoteThread
• 9: RawAccessRead
WINDOWS LOG ALTYAPISI
SYSMON Logları
SYSMON Event ID’leri [devamı]:
• 10: ProcessAccess
• 11: FileCreate
• 12: RegistryEvent (Object create and delete)
• 13: RegistryEvent (Value Set)
• 14: RegistryEvent (Key and Value Rename)
• 15: FileCreateStreamHash
• 17: PipeEvent (Pipe Created)
• 18: PipeEvent (Pipe Connected)
• 19: WmiEvent (WmiEventFilter activity detected)
• 20: WmiEvent (WmiEventConsumer activity detected)
• 21: WmiEvent (WmiEventConsumerToFilter activity detected)
• 22: DNSEvent (DNS query)
WINDOWS LOG ALTYAPISI
SYSMON Logları
SYSMON konfigürasyon dosyası örneği:
WINDOWS LOG ALTYAPISI
Diğer Windows Event Log Dosyalarına Örnekler
Yanal hareket [Lateral Movement] açısından önemli olabilecek
diğer event loglarına örnek olarak aşağıdakiler verilebilir:
Remote Desktop bağlantıları için
Applications and Services Logs -> Microsoft -> Windows ->
TerminalServices-LocalSessionManager -> Operational
Task Scheduler sistemi için
Applications and Services Logs -> Microsoft -> Windows -> TaskScheduler ->
Operational
WINDOWS LOG ALTYAPISI
SYSLOG Konfigürasyonu
UNIX & LINUX SYSLOG ALTYAPISI
Dosya formatındaki log’lar:
• DNS
• DHCP
• WEB
• Üçüncü taraf uygulamaların ürettiği log kayıt dosyaları
GENEL LOG ALTYAPILARINDAN BAĞIMSIZ
LOG KAYNAKLARI
• WMI
• SSH
• SMB
• SYSLOG
• Veritabanı Erişimi
• Diğer özel protokoller
GENEL LOG TOPLAMA METODLARI
SALDIRI ARAÇLARININ BIRAKTIKLARI
İZLERE YÖNELİK ARAŞTIRMALAR
https://www.jpcert.or.jp/english/pub/sr/20170612ac-ir_research_en.pdf
SALDIRI ARAÇLARININ BIRAKTIKLARI
İZLERE YÖNELİK ARAŞTIRMALAR
• Zaman Çizgisi (Timeline) kavramı ve log kaynaklarının zaman
senkronizasyonu
• Logların saklanma süresi (yasal ve inceleme süre gereksinimleri)
• Logların değiştirilemezliğinin güvence altına alınması (sayısal
olarak imzalanması)
DİĞER KONULAR
Structured Threat Information Exchange [STIX] dili ve Trusted
Automated Exchange of Intelligence Information [TAXII] protokolü
DİĞER KONULAR
https://stixproject.github.io/supporters/
• Collaborative Automated Course of Action Operations for Cyber
Security [CACAO] (https://www.oasis-
open.org/committees/tc_home.php?wg_abbrev=cacao) -
Playbook standardizasyonu
• Open Command and Control [OPENC2] (https://www.oasis-
open.org/committees/tc_home.php?wg_abbrev=openc2) -
Askeri terim olarak komuta kontrol süreçlerinin
standardizasyonuna yönelik yürütülen çalışmalar
DİĞER KONULAR
LOG TOPLAMA
VE ANALİZİ
[DEMO]
Elasticsearch ve Kibana container’larımızın başlatılması.
ELASTICSEARCH VE KIBANA HAZIRLIK
Elasticsearch container’ımızın başladığından emin olunması.
ELASTICSEARCH VE KIBANA HAZIRLIK
Kibana container’ımızın başladığından emin olunması.
ELASTICSEARCH VE KIBANA HAZIRLIK
Nikto web taraması tespiti için “Apache” web sunucu loglarımızı
“sftp” erişim yöntemi ile toplayarak “Elasticsearch”e atacağız.
NİKTO WEB TARAMA SENARYOSU
LOG TOPLANACAK SUNUCUNUN IP ADRESİ
Log toplamak için kullandığımız erişim bilgileri (credential’lar).
NİKTO WEB TARAMA SENARYOSU
Elasticsearch’te Apache Log’larının toplanması öncesinde
Kibana’nın Dev Tools modülünü kullanarak ilgili index’i oluşturuyor
ve sadece zaman alanı için mapping işlemini yapıyoruz.
DELETE apache_logs [varsa index’i silmek için]
PUT apache_logs [index’i oluşturmak için]
[timestamp alanı mapping’i için]
PUT apache_logs/_mapping
{
"properties": {
"timestamp": {
"type": "date",
"format": "dd/MMM/yyyy:HH:mm:ss Z"
}
}
}
NİKTO WEB TARAMA SENARYOSU
Elasticsearch’ün RESTFUL API’sine yönelik olarak Kibana’nın Dev
Tools modülü ile bu komutları gönderebiliriz.
NİKTO WEB TARAMA SENARYOSU
Log toplama uygulamamızı başlatıyoruz.
NİKTO WEB TARAMA SENARYOSU
Sunucuya yönelik Nikto taramamızı başlatıyoruz.
NİKTO WEB TARAMA SENARYOSU
Apache loglarının toplandığından emin olabilmek için tüm kayıtlara
yönelik bir sorgu yapalım.
NİKTO WEB TARAMA SENARYOSU
Elasticsearch üzerindeki apache_logs index’ine yönelik olarak
clientip alanı bazında response kodu 404 olmuş olan HTTP
isteklerinin istatistiğini sorgulayalım:
GET apache_logs/_search
{
"size": 0,
"query": {
"bool": {
"must": [
{
"match": {
"response": "404"
}
},
{
"range": {
"timestamp": {
"gte": "now-180s"
}
}
}
]
}
},
"aggs": {
"by_src_ip": {
"terms": {
"field": "clientip.keyword"
}
}
}
}
NİKTO WEB TARAMA SENARYOSU
Response kodu 404 olan istemcileri sorguladığımızda Nikto
taramasını yaptığımız bilgisayarın IP adresini görebiliyoruz.
NİKTO WEB TARAMA SENARYOSU
Bir Nikto taramasını tespit etmek için yapabileceğimiz bir başka
sorgu da User Agent başlığında geçen Nikto kelimesini aramak
olabilirdi:
GET apache_logs/_search
{
"size": 0,
"query": {
"bool": {
"must": [
{
"match": {
"agent": "Nikto"
}
},
{
"range": {
"timestamp": {
"gte": "now-1800s"
}
}
}
]
}
},
"aggs": {
"by_src_ip": {
"terms": {
"field": "clientip.keyword"
}
}
}
}
NİKTO WEB TARAMA SENARYOSU
Agent alanında Nikto kelimesini aradığımızda da benzer bir sonuca
ulaşabildik.
NİKTO WEB TARAMA SENARYOSU
Port tarama senaryosu için Logstash’i kullanacağız. Logstash’in log kayıtlarını
göndermesi gereken Elasticsearch sunucu IP adresimizi control edelim.
PORT TARAMA SENARYOSU
Port tarama yapılacak hedef sunucu üzerinde Logstash’in logları
göndereceği Elasticsearch sunucu IP adresini konfigüre edelim.
PORT TARAMA SENARYOSU
Logstash “tcpdump” çıktısını bekliyor, onu parse ediyor ve
Elasticsearch sunucusuna iletiyor.
input {
tcp {
port => 5000
type => tcpdump
}
udp {
port => 5000
type => tcpdump
}
}
filter {
grok {
match => ["message", "%{TIMESTAMP_ISO8601:timestamp} IP
%{IP:src_ip}.%{INT:src_port} > %{IP:dst_ip}.%{INT:dst_port}"]
remove_field => ["message"]
add_tag => ["network","tcp_connection_started"]
}
}
output {
elasticsearch {
hosts => ["192.168.171.135:9200"]
index => "logstash-tcpdump"
}
stdout { codec => rubydebug }
}
PORT TARAMA SENARYOSU
Logları toplamadan önce logstash-tcpdump index’ini silelim.
PORT TARAMA SENARYOSU
Yeni Logstash konfigürasyonumuzun aktif hale gelmesi için logstash
servisini yeniden başlatalım.
PORT TARAMA SENARYOSU
Port taramasını gerçekleştirmek üzere hedef sunucu IP adresini
kontrol edelim.
PORT TARAMA SENARYOSU
Port taraması hedefimiz üzerinde tcpdump’ı başlatarak logstash
servisine yönlendirelim.
PORT TARAMA SENARYOSU
tcpdump -nS -i ens33 -s0 -tttt | nc -v localhost 5000
Hedef sunucuya yönelik bir nmap taraması gerçekleştirelim.
PORT TARAMA SENARYOSU
Elasticsearch’e son 3 dk. içinde hedef sunucu ve TCP SYN paketi
gönderen istemci bazında bir aggregation sorgusu yapalım.
PORT TARAMA SENARYOSU
Kullandığımız aggregation sorgusu.
GET logstash-tcpdump/_search
{
"size": 0,
"query": {
"bool": {
"must": [
{
"match": {
"tags": "tcp_connection_started"
}
},
{
"range": {
"@timestamp": {
"gte": "now-180s"
}
}
}
]
}
},
"aggs": {
"by_src_ip": {
"terms": {
"field": "src_ip.keyword"
},
"aggs": {
"by_target_ip": {
"terms": {
"field": "dst_ip.keyword",
"order": {
"unique_port_count": "desc"
}
},
"aggs": {
"unique_port_count": {
"cardinality": {
"field": "dst_port.keyword"
}
}
}
}
}
}
}
}
PORT TARAMA SENARYOSU
Impacket Psexec bağlantısı öncesi hedef Windows 10 bilgisayar
üzerindeki Sysmon event loglarını silelim.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
Sysmon loglarını toplayacağımız Windows 10 bilgisayarımızın IP
adresini kontrol edelim.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
Windows event loglarını toplamadan önce windows_event_logs
index’ini silerek tekrar oluşturalım.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
DELETE windows_event_logs
PUT windows_event_logs
Log toplama uygulamamız üzerinde WMI erişim bilgilerini
düzenleyelim.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
Log toplama uygulamamızı başlatalım.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
Impacket kütüphanesini kullanabilmek için virtual
environment’ımızı aktif hale getirelim.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
Psexec.py aracı ile hedef Windows 10 bilgisayarımıza bağlanalım.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
psexec.py Administrator:btrisk@192.168.171.128
Elasticsearch’te toplanan loglar içinde psexec.py aracının kullandığı
binary dosyanın hash değerini aradığımızda bu aracın kullanıldığını
tespit edebiliyoruz.
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
23873BF2670CF64C2440058130548D4E4DA412DD
Windows event logları içinde dosya hash değerini aramak için
kullandığımız sorgu.
GET windows_event_logs/_search
{
"query": {
"match": {
"MessageText": "23873BF2670CF64C2440058130548D4E4DA412DD"
}
}
}
IMPACKET PSEXEC BAĞLANTI
SENARYOSU
BTRisk - Siber Olay Tespit ve Mudahale Egitimi

More Related Content

What's hot

Saldırı Tipleri ve Log Yönetimi
Saldırı Tipleri ve Log YönetimiSaldırı Tipleri ve Log Yönetimi
Saldırı Tipleri ve Log YönetimiOğuzcan Pamuk
 
Zararlı Yazılım Analizi İçin Lab Ortamı Hazırlamak
Zararlı Yazılım Analizi İçin Lab Ortamı HazırlamakZararlı Yazılım Analizi İçin Lab Ortamı Hazırlamak
Zararlı Yazılım Analizi İçin Lab Ortamı HazırlamakBGA Cyber Security
 
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBeyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBGA Cyber Security
 
Hacklenmiş Web Sunucu Analizi
Hacklenmiş Web Sunucu AnaliziHacklenmiş Web Sunucu Analizi
Hacklenmiş Web Sunucu AnaliziBGA Cyber Security
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6BGA Cyber Security
 
Sızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıSızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıBGA Cyber Security
 
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriDNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriBGA Cyber Security
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriBGA Cyber Security
 
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziKurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziBGA Cyber Security
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15BGA Cyber Security
 
Kablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarKablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarBGA Cyber Security
 
Log Yönetimi ve Saldırı Analizi Eğitimi -1
Log Yönetimi ve Saldırı Analizi Eğitimi -1Log Yönetimi ve Saldırı Analizi Eğitimi -1
Log Yönetimi ve Saldırı Analizi Eğitimi -1BGA Cyber Security
 

What's hot (20)

Saldırı Tipleri ve Log Yönetimi
Saldırı Tipleri ve Log YönetimiSaldırı Tipleri ve Log Yönetimi
Saldırı Tipleri ve Log Yönetimi
 
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirmeWeb uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
 
Zararlı Yazılım Analizi İçin Lab Ortamı Hazırlamak
Zararlı Yazılım Analizi İçin Lab Ortamı HazırlamakZararlı Yazılım Analizi İçin Lab Ortamı Hazırlamak
Zararlı Yazılım Analizi İçin Lab Ortamı Hazırlamak
 
Web Uygulama Pentest Eğitimi
Web Uygulama Pentest EğitimiWeb Uygulama Pentest Eğitimi
Web Uygulama Pentest Eğitimi
 
VERİTABANI SIZMA TESTLERİ
VERİTABANI SIZMA TESTLERİVERİTABANI SIZMA TESTLERİ
VERİTABANI SIZMA TESTLERİ
 
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBeyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
 
Hacklenmiş Web Sunucu Analizi
Hacklenmiş Web Sunucu AnaliziHacklenmiş Web Sunucu Analizi
Hacklenmiş Web Sunucu Analizi
 
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 4, 5, 6
 
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
 
Hacking'in Mavi Tarafı -1
Hacking'in Mavi Tarafı  -1Hacking'in Mavi Tarafı  -1
Hacking'in Mavi Tarafı -1
 
Sızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıSızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage Kullanımı
 
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriDNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
 
Metasploit Framework Eğitimi
Metasploit Framework EğitimiMetasploit Framework Eğitimi
Metasploit Framework Eğitimi
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği Temelleri
 
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziKurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 13, 14, 15
 
Kablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarKablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan Saldırılar
 
Log Yönetimi ve Saldırı Analizi Eğitimi -1
Log Yönetimi ve Saldırı Analizi Eğitimi -1Log Yönetimi ve Saldırı Analizi Eğitimi -1
Log Yönetimi ve Saldırı Analizi Eğitimi -1
 
Metasploit El Kitabı
Metasploit El KitabıMetasploit El Kitabı
Metasploit El Kitabı
 

Similar to BTRisk - Siber Olay Tespit ve Mudahale Egitimi

Hacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıHacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıMustafa
 
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıBilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıRaif Berkay DİNÇEL
 
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıSüleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıKasım Erkan
 
Bilgi güvenlik uygulamaları
Bilgi güvenlik uygulamalarıBilgi güvenlik uygulamaları
Bilgi güvenlik uygulamalarıMusa BEKTAŞ
 
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdfSiber_Guvenlik_ve_Etik_Hacking-2023-Z.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdfMurat KARA
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarBGA Cyber Security
 
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdfSiber_Guvenlik_ve_Etik_Hacking-2023-BB.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdfMurat KARA
 
Threat data feeds
Threat data feedsThreat data feeds
Threat data feedsDoukanksz
 
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Securitymtimur
 
Web Uygulamalarında Risk Yönetimi ve Değerlendirme
Web Uygulamalarında Risk Yönetimi ve DeğerlendirmeWeb Uygulamalarında Risk Yönetimi ve Değerlendirme
Web Uygulamalarında Risk Yönetimi ve DeğerlendirmeErkan Başavcı
 
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptx
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptxKötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptx
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptxAbbasgulu Allahverdili
 
Uç Nokta Güvenliği
Uç Nokta GüvenliğiUç Nokta Güvenliği
Uç Nokta GüvenliğiFevziye Tas
 
Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-Murat KARA
 
Lecture 1 Siber Güvenlik Temel Kavramlar
Lecture 1 Siber Güvenlik Temel KavramlarLecture 1 Siber Güvenlik Temel Kavramlar
Lecture 1 Siber Güvenlik Temel KavramlarTurkIOT
 
Siber güvenlik ve SOC
Siber güvenlik ve SOCSiber güvenlik ve SOC
Siber güvenlik ve SOCSerkan Özden
 
Jetico personal firewall 2
Jetico personal firewall 2Jetico personal firewall 2
Jetico personal firewall 2Mutlu
 

Similar to BTRisk - Siber Olay Tespit ve Mudahale Egitimi (20)

Hacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıHacking Uygulamaları ve Araçları
Hacking Uygulamaları ve Araçları
 
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıBilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
 
SİBER GÜVENLİK
SİBER GÜVENLİKSİBER GÜVENLİK
SİBER GÜVENLİK
 
Cyber Kill Chain
Cyber Kill ChainCyber Kill Chain
Cyber Kill Chain
 
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıSüleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
 
Bilgi güvenlik uygulamaları
Bilgi güvenlik uygulamalarıBilgi güvenlik uygulamaları
Bilgi güvenlik uygulamaları
 
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdfSiber_Guvenlik_ve_Etik_Hacking-2023-Z.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-Z.pdf
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka Kapılar
 
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdfSiber_Guvenlik_ve_Etik_Hacking-2023-BB.pdf
Siber_Guvenlik_ve_Etik_Hacking-2023-BB.pdf
 
Owasp top 10 inceleme
Owasp top 10 incelemeOwasp top 10 inceleme
Owasp top 10 inceleme
 
Threat data feeds
Threat data feedsThreat data feeds
Threat data feeds
 
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Security
 
Web Uygulamalarında Risk Yönetimi ve Değerlendirme
Web Uygulamalarında Risk Yönetimi ve DeğerlendirmeWeb Uygulamalarında Risk Yönetimi ve Değerlendirme
Web Uygulamalarında Risk Yönetimi ve Değerlendirme
 
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptx
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptxKötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptx
Kötü Niyetli Programlar ve Bu Programları Engelleyici Programlar.pptx
 
Uç Nokta Güvenliği
Uç Nokta GüvenliğiUç Nokta Güvenliği
Uç Nokta Güvenliği
 
Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-Siber Guvenlik ve Etik Hhacking -2-
Siber Guvenlik ve Etik Hhacking -2-
 
Lecture 1 Siber Güvenlik Temel Kavramlar
Lecture 1 Siber Güvenlik Temel KavramlarLecture 1 Siber Güvenlik Temel Kavramlar
Lecture 1 Siber Güvenlik Temel Kavramlar
 
Siber güvenlik ve SOC
Siber güvenlik ve SOCSiber güvenlik ve SOC
Siber güvenlik ve SOC
 
Web Hacking
Web HackingWeb Hacking
Web Hacking
 
Jetico personal firewall 2
Jetico personal firewall 2Jetico personal firewall 2
Jetico personal firewall 2
 

More from BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri

More from BTRisk Bilgi Güvenliği ve BT Yönetişim Hizmetleri (20)

BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-3
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-3BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-3
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-3
 
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-2
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-2BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-2
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-2
 
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
 
BTRisk Zararlı Yazılım Analizi Eğitimi Sunumu - Bölüm 1
BTRisk Zararlı Yazılım Analizi Eğitimi Sunumu - Bölüm 1BTRisk Zararlı Yazılım Analizi Eğitimi Sunumu - Bölüm 1
BTRisk Zararlı Yazılım Analizi Eğitimi Sunumu - Bölüm 1
 
Yazıcı Güvenliği
Yazıcı GüvenliğiYazıcı Güvenliği
Yazıcı Güvenliği
 
BTRISK ISO27001 UYGULAMA EGITIMI SUNUMU
BTRISK ISO27001 UYGULAMA EGITIMI SUNUMUBTRISK ISO27001 UYGULAMA EGITIMI SUNUMU
BTRISK ISO27001 UYGULAMA EGITIMI SUNUMU
 
Sizma testi bilgi toplama
Sizma testi bilgi toplamaSizma testi bilgi toplama
Sizma testi bilgi toplama
 
Kali Linux Hakkında Herşey
Kali Linux Hakkında HerşeyKali Linux Hakkında Herşey
Kali Linux Hakkında Herşey
 
BTRisk iOS Mobil Uygulama Denetimi Eğitimi
BTRisk iOS Mobil Uygulama Denetimi EğitimiBTRisk iOS Mobil Uygulama Denetimi Eğitimi
BTRisk iOS Mobil Uygulama Denetimi Eğitimi
 
Unix Denetim Dokümanı
Unix Denetim DokümanıUnix Denetim Dokümanı
Unix Denetim Dokümanı
 
BTRisk Android Mobil Uygulama Denetimi Eğitimi
BTRisk Android Mobil Uygulama Denetimi EğitimiBTRisk Android Mobil Uygulama Denetimi Eğitimi
BTRisk Android Mobil Uygulama Denetimi Eğitimi
 
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi EğitimiBTRisk Yazılım Güvenliği Yönetimi Eğitimi
BTRisk Yazılım Güvenliği Yönetimi Eğitimi
 
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme SunumuBTRisk Android Uygulamalara Malware Yerleştirme Sunumu
BTRisk Android Uygulamalara Malware Yerleştirme Sunumu
 
BTRisk ISO 27001:2013 Bilgilendirme ve İç Denetim Eğitimi Sunumu
BTRisk ISO 27001:2013 Bilgilendirme ve İç Denetim Eğitimi SunumuBTRisk ISO 27001:2013 Bilgilendirme ve İç Denetim Eğitimi Sunumu
BTRisk ISO 27001:2013 Bilgilendirme ve İç Denetim Eğitimi Sunumu
 
BTRİSK Web Uygulama Güvenliği Denetimi Eğitim Sunumu
BTRİSK Web Uygulama Güvenliği Denetimi Eğitim SunumuBTRİSK Web Uygulama Güvenliği Denetimi Eğitim Sunumu
BTRİSK Web Uygulama Güvenliği Denetimi Eğitim Sunumu
 
Bilgi Güvenliği Farkındalık Eğitimi Sunumu
Bilgi Güvenliği Farkındalık Eğitimi SunumuBilgi Güvenliği Farkındalık Eğitimi Sunumu
Bilgi Güvenliği Farkındalık Eğitimi Sunumu
 
BTRisk Adli Bilişim Eğitimi Sunumu
BTRisk Adli Bilişim Eğitimi SunumuBTRisk Adli Bilişim Eğitimi Sunumu
BTRisk Adli Bilişim Eğitimi Sunumu
 
BTRİSK Web Uygulama Güvenliği Denetimi Eğitimi
BTRİSK Web Uygulama Güvenliği Denetimi EğitimiBTRİSK Web Uygulama Güvenliği Denetimi Eğitimi
BTRİSK Web Uygulama Güvenliği Denetimi Eğitimi
 
BTRWATCH ISO27001 Yazılımı
BTRWATCH ISO27001 YazılımıBTRWATCH ISO27001 Yazılımı
BTRWATCH ISO27001 Yazılımı
 
Jmeter ile uygulama katmanında yük testi gerçekleştirme
Jmeter ile uygulama katmanında yük testi gerçekleştirmeJmeter ile uygulama katmanında yük testi gerçekleştirme
Jmeter ile uygulama katmanında yük testi gerçekleştirme
 

BTRisk - Siber Olay Tespit ve Mudahale Egitimi

  • 1. SİBER OLAY TESPİT VE MÜDAHALE EĞİTİMİ blog.btrisk.com @btrisk /btrisktv /btrisk
  • 3. Sürekli değişen ve daha önce görülmemiş saldırı vektörleri OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
  • 4. Sabırlı ve hedefe odaklı saldırganlar OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
  • 5. Artan veri miktarı ve verinin artan değeri OLAY MÜDAHALESİ NEDEN ÖNEMLİ ?
  • 9. TANIMI Bir saldırganın ağa sızması, uzun süre ağda izleme yapması ve veri sızdırması, hedefine doğru ilerlerken diğer sistemlere sızması ve nihayetinde asıl amacını uygulaması ile sonuçlanan saldırı türüne verilen addır. DOĞASI • Ağa sızmak için genellikle sosyal mühendislik ve fiziksel sızma yöntemleri tercih edilir. Ağa ilk adım genellikle son kullanıcı bilgisayarları üzerinden atılır. • Hedefe özel geliştirilmiş zararlı yazılım kullanılır. Hedef bilgisayar üzerindeki koruma önlemlerini minimize eder, genellikle keylogger ve screen capture özelliklerini barındırır. ADVANCED PERSISTENT THREAT (APT)
  • 10. DOĞASI (Devamı) • Ele geçirilen sisteme erişimin sürekliliği için dışarı yönlü tünel açılmabilmesi gereklidir. Bu nedenle bu tür saldırıların engellenebilmesi ve tespiti için en etkili kontrollerden birisi dışarı yönlü filtreleme [egress filtering] ve siber istihbarat desteği de bulunan ağ izleme sistemleridir. • Saldırgan hedefine ulaşmak için ağ içinde sızma testi tekniklerini uygulayarak diğer sistemlere de sızmaya çalışır [lateral movement]. • Saldırgan kritik sistemlere yeterince bilgi topladıktan sonra geçerli ve yetkili bir erişime benzer şekilde erişir, bu sayede izlenen sistemler üzerinde şüpheli aktiviteyi minimize eder. ADVANCED PERSISTENT THREAT (APT)
  • 12. FİZİKSEL ERİŞİM İHLALİ LAN Turtle Raspberry Pi – Mini Bilgisayar Rogue Access Point CD / USB ile Boot Etme
  • 13. FİZİKSEL ERİŞİM İHLALİ Bad USB Script Örneği
  • 14. SOSYAL MÜHENDİSLİK Drive by Downloads Drive by download saldırılarında kurban sadece bir web sitesini ziyaret ettiğinde bilgisayarına zararlı yazılım indirilmekte ve çalıştırılmaktadır. Bu saldırı şu şekilde geçekleştirilmektedir: • Kurbanın Zararlı Siteyi Ziyareti: Saldırgan kurbanı kendi kontrol ettiği bir siteye sosyal mühendislik yöntemiyle yönlendirir. Ya da normal bir web sitesinin HTML injection açıklığını kullanarak bu siteye görünmeyen bir IFRAME ekler, bu frame kendi kontrol ettiği bir sitenin içeriğini barındırır. Ya da reklam altyapısını kullanarak yayınladığı reklam içeriği ile sonraki adımları gerçekleştirir.
  • 15. SOSYAL MÜHENDİSLİK Drive by Downloads • Exploit Kit: Saldırgan kontrol ettiği sitenin içeriğine “exploit kit” adı verilen obfuscate edilmiş Javascript kodlarını ekler. Exploit kit’ler 20$-2500$ fiyat aralığında satın alınabilirler. Exploit kit çok kullanılan browser plugin’lerinin (ör: Flash, Silverlight, Java, PDF reader v.d.) versiyonlarını inceledikten sonra uygun olan exploit’i kullanır. • Download ve Ele Geçirme: Tespit edilen açıklığa yönelik kullanılan exploit shellcode’u saldırganın istediği herhangi bir malware’i kurbanın bilgisayarına indirir ve çalıştırır. Saldırgan bir Exploit Kit Panel üzerinden kurduğu altyapının performansını izleyebilir.
  • 16. SOSYAL MÜHENDİSLİK Zararlı Yazılım İçeren Dosyalar • Zararlı macro içeren ofis dokümanları, PUB dosyaları (powershell, exe v.d. çalıştırılabilir kodları çalıştırabilir, internetten dosya , script v.b. indirip çalıştırabilir) • HTA dosyasından powershell çalıştırma • LNK dosyasından powershell çalıştırma • Right to Left Order (RTLO) isimlendirme kullanarak çalıştırılabilir dosyaya ofis dokümanı görüntüsü verme (ör: finans_tlexe.xls) • Renderer uygulama açıklıklarını kullanan dosyalar (ör: PDF, MSWord, Flash, v.d.) • Signed Applet saldırısı
  • 17. SOSYAL MÜHENDİSLİK Zararlı Yazılım İçeren Dosyalar • Icon'u değiştirilmiş (ofis dokümanına, PDF dokümanına benzetilmiş) çalıştırılabilir zararlı uygulama dosyaları (Windows'un öntanımlı olarak bilinen dosya uzantılarını gizleme özelliğinden faydalanılması)
  • 18. UYGULAMA AÇIKLIKLARI • SQL Injection Açıklıkları • Dosya Yükleme Açıklıkları • Remote File Injection (RFI) / Local File Injection (LFI)
  • 19. ÜÇÜNCÜ TARAFLARA VE PERSONELE SAĞLANAN UZAKTAN ERİŞİMLER
  • 20. ÖRNEK: TARGET HACK HAKKINDA Target Corporation is the second-largest discount store retailer in the United States, behind Walmart, and a component of the S&P 500 Index. Founded by George Dayton and headquartered in Minneapolis, Minnesota, the company was originally named Goodfellow Dry Goods in June 1902 before being renamed the Dayton's Dry Goods Company in 1903 and later the Dayton Company in 1910. Kaynak: Wikipedia ÜÇÜNCÜ TARAFLARA VE PERSONELE SAĞLANAN UZAKTAN ERİŞİMLER
  • 21. ÖRNEK: TARGET HACK NE OLDU? 23 Aralık 2013'te 40 milyon debit ve kredi kartı bilgisinin [70-110 milyon arası olduğu da iddia edildi] çalındığı duyuruldu. Target 17 Kasım ve 15 Aralık arasında alışveriş yapmış olan müşterilerinin etkilendiğini duyurdu. Çalınan veriler müşteri adı soyadı, debit ve kredi kart numarası, son kullanma tarihleri ve CVV bilgilerini içeriyordu. ÜÇÜNCÜ TARAFLARA VE PERSONELE SAĞLANAN UZAKTAN ERİŞİMLER
  • 22. ÖRNEK: TARGET HACK NASIL OLDU? Saldırganlar önce Fazio Mechanical Services adlı iklimlendirme [HVAC] şirketini hedef alarak bu şirketin Target'a sorumlu oldukları sistemleri izlemek amacıyla kullandıkları erişim bilgilerini çaldılar. Kullandıkları yöntem Spear Phishing'di. ÜÇÜNCÜ TARAFLARA VE PERSONELE SAĞLANAN UZAKTAN ERİŞİMLER
  • 23. ÖRNEK: TARGET HACK NASIL OLDU? Saldırganlar seçtikleri birkaç mağazadaki POS cihazlarına test amaçlı olarak zararlı yazılım yükledi ve 15-28 Kasım tarihleri arasında testlerini yaptı. 30 Kasım'dan itibaren POS cihazlarının çoğuna 5 farklı zararlı yazılım versiyonunu yüklediler ve 2 Aralık tarihine kadar bilgi topladılar. Topladıkları verileri Target ağı içindeki 3 ayrı noktaya ve sadece saat 10 A.M. – 6 P.M. arasında gönderdiler. 2 Aralık'ta toplanan veriler Moskova'ya gönderildi. 12 Aralık'ta inceleme başlatıldığında artık çok geçti. ÜÇÜNCÜ TARAFLARA VE PERSONELE SAĞLANAN UZAKTAN ERİŞİMLER
  • 24. KULLANICILARDAN SIZDIRILAN ERİŞİM BİGİLERİ • Phishing (oltalama) saldırıları • Farklı sistemler üzerinde kurum erişim bilgilerinin kullanılması (cafe hotspot sistemleri, elektronik ticaret siteleri, web mail ve sosyal ağ uygulamaları, v.d.) • Kurum kullanıcılarının şahsi bilgisayarlar ve cihazlarında bulunan erişim bilgilerinin çalınma, tamir, satılma gibi olaylar sırasında sızması
  • 26. BİLGİ TOPLAMA [ENUMERATION] Erişilen sistem üzerinde toplanan bilgiler ve işletim sistemlerinin kendilerine has konfigürasyon özellikleri kullanılarak yetki yükseltilebilir. (bkz. https://www.exploit-db.com/docs/turkish/42757-[turkish]- windows-and-linux-privilege-escalation.pdf)
  • 27. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ whoami Kullanıcı domain ve adı hostname Sunucu adı systeminfo İşletim sistemi adı ve versiyonu yüklü hotfix'ler whoami /groups Kullanıcımızın üyesi olduğu gruplar net users Kullanıcı listesi net localgroup Administrators Administrators grubunun üyeleri net localgroup Kullanıcı grupları tasklist /SVC Çalışan prosesler ve ilgili servis bilgileri ipconfig /all Ağ arayüz bilgileri netstat -ano Dinleyen ağ servisleri TEMEL BİLGİLER
  • 28. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ net start Çalışan servisler quser Sisteme bağlı kullanıcılar qprocess Çalışan uygulamalar ve uygulamaları başlatan kullanıcılar driverquery Driver'lar net share Paylaşımlar more %WINDIR%System32driversetchosts hosts dosyası more %WINDIR%System32driversetcnetworks networks dosyası gpresult /R Group policy TEMEL BİLGİLER
  • 29. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ reg query HKCUSOFTWAREPoliciesMicrosoftWindow sInstaller /v AlwaysInstallElevated Always Install Elevated ayarı aktif mi? reg query HKLMSOFTWAREPoliciesMicrosoftWindow sInstaller /v AlwaysInstallElevated Always Install Elevated ayarı aktif mi? accesschk.exe -uwcqv "Authenticated Users" * /accepteula Servis konfigürasyonu “Authenticated Users” grubu tarafından değiştirilebilen servisler accesschk.exe -uwcqv "Users" * /accepteula Servis konfigürasyonu “Users” grubu tarafından değiştirilebilen servisler accesschk.exe -uwcqv "Everyone" * /accepteula Servis konfigürasyonu “Everyone” grubu tarafından değistirilebilen servisler KOLAY HEDEFLER
  • 30. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ reg query "HKLMSOFTWAREMicrosoftWindows NTCurrentversionWinlogon" /v DefaultUsername Default logon kullanıcı adı reg query "HKLMSOFTWAREMicrosoftWindows NTCurrentversionWinlogon" /v DefaultPassword Default logon parolası wmic service get name,displayname,pathname,startmode 2> nul |findstr /i /v "c:windows" |findstr /i /v """ Servis executable’ı tırnak ile belirtilmemiş servisler KOLAY HEDEFLER
  • 31. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ dir /a/s/b > dosyalistesi.txt Daha sonra kullanmak üzere tüm dosyaların listesinin çıkarılması type dosyalistesi.txt | findstr /I unattend.xml type dosyalistesi.txt | findstr /I unattend.txt type dosyalistesi.txt | findstr /I sysprep.inf type dosyalistesi.txt | findstr /I sysprep.xml İçinde öntanımlı credential barındırabilecek dosyalar type dosyalistesi.txt | findstr /I .*passw*. | findstr /VI .*.chm$ | findstr /VI .*.log$ | findstr /VI .*.dll$ | findstr /VI .*.exe$ type dosyalistesi.txt | findstr /I .*ntds[.].*$ type dosyalistesi.txt | findstr /I .*ssh.*[.]ini$ type dosyalistesi.txt | findstr /I .*ultravnc[.]ini$ type dosyalistesi.txt | findstr /I .*vnc[.]ini$ ... İlginç dosya adları DOSYA TARAMA
  • 32. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ findstr /si "password=" C:*.ini C:*.xml C:*.txt C:*.bat findstr /si "passwd=" C:*.ini C:*.xml C:*.txt C:*.bat findstr /si "pass=" C:*.ini C:*.xml C:*.txt C:*.bat findstr /si "pwd=" C:*.ini C:*.xml C:*.txt C:*.bat Belli uzantılı dosyalar içinde geçebilecek olası password değerleri DOSYA TARAMA
  • 33. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ reg query HKLMSOFTWARERealVNCvncserver /v Password reg query HKLMSoftwareTightVNCServer /v Password reg query HKCUSoftwareTightVNCServer /v Password reg query HKLMSoftwareTightVNCServer /v PasswordViewOnly reg query HKLMSoftwareTigerVNCWinVNC4 /v Password reg query HKLMSOFTWAREORLWinVNC3Default /v Password reg query HKLMSOFTWAREORLWinVNC3 /v Password reg query HKCUSoftwareORLWinVNC3 /v Password VNC parolaları içerebilecek registry anahtarları reg query HKLM /k /f password /t REG_SZ /s reg query HKCU /k /f password /t REG_SZ /s Registry kayıtları içindeki olası password değerleri REGISTRY İÇİNDE BİLGİ ARAMA
  • 34. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ schtasks /query /fo LIST /v Zamanlı (scheduled) işler for /f "tokens=2" %%a in ('sc queryex type^= service state^= all ^| find ^/i "SERVICE_NAME"') do (sc qc %%a) Servis bilgileri - Binary_Path_Name ve Service_Start_Name bilgileri ile for /f "tokens=1 delims=," %%a in ('tasklist /SVC /FO CSV ^| findstr /I .*exe*. ^| findstr /VI "smss.exe csrss.exe winlogon.exe services.exe spoolsv.exe explorer.exe ctfmon.exe wmiprvse.exe msmsgs.exe notepad.exe lsass.exe svchost.exe findstr.exe cmd.exe tasklist.exe"') do (findstr %%a$ | findstr /VI ".*winsxs*.") <dosyalistesi.txt >> serviceexes.txt for /f "tokens=*" %%a in (serviceexes.txt) do (cacls "%%a") Servis executable dosyaları erişim hakları TASK VE SERVİS TARAMA
  • 35. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ dsquery group Domain grupları listesi dsget group "CN=Domain Admins,CN=Users,DC=btrisk,DC=local" - members “Domain Admins” grubu üyeleri dsget user "CN=femiral,CN=Users,DC=btrisk,DC=local" - memberof Belli bir kullanıcının üyesi olduğu gruplar dsquery user -samid "femiral" | dsget user - memberof -expand Kullanıcı adı ile kullanıcının üyesi olduğu grupların sorgulanması dsquery user Domain kullanıcılarının listesi dsquery computer Domain'e bağlı bilgisayarların listesi csvde -f domainenum.csv Tüm LDAP ağacının export edilmesi ldifde -f domainenum.csv Tüm LDAP ağacının export edilmesi DOMAIN SUNUCUSU ÜZERİNDE ÇALIŞTIRILABİLECEK KOMUTLAR
  • 36. SALDIRGANLARIN YETKİ YÜKSELTME İMKANLARI • Yetki yükseltme imkanları iki temel alandan kaynaklanır: • Konfigürasyon hataları ve erişim bilgilerinin sızması • Lokal Exploit imkanları • Belli bir dönem çok sık kullanılmış olan lokal exploitlere örnek olarak MS14-058 açıklığı ile Local System kullanıcı haklarına yükseltme ve DC sunucusuna eriştikten sonra MS14-068 açıklığı ile Domain Admin kullanıcı haklarına yükseltme imkanları verilebilir.
  • 37. BİLGİ TOPLAMA VE YETKİ YÜKSELTME AŞAMASINDA TESPİT • Domain ve erişilen sistem hakkında bilgi toplama amacıyla kullanılan komutların pek çoğu sıradan kullanıcılar tarafından kullanılmayacağından bu proses'lerin başlatılmasının izlenmesinde fayda vardır. • Ayrıca lateral movement için kullanılabilen ancak sıradan kullanıcılar tarafından sık kullanılmayan komutların da izlenmesinde fayda vardır.
  • 38. İZLENMESİNDE FAYDA OLABİLECEK BAZI KOMUTLAR cscript vbscript çalıştırmak için del Parametre olarak bir exe, bat, ps1 dosyası kullanılmışsa procdump, accesschk, psexec ve diğer Sysinternals araçları Bellek dump etme, erişim hakları sorgulama, uzakta komut çalıştırma powershell Powershell fonksiyonalitesini kullanma regsvr32 Applocker kontrolünü aşmak için vssadmin NTDS.DIT dosyasını çalmak için Volume Shadow Copy alma wmic WMI fonksiyonalitesini kullanma schtasks Scheduled iş oluşturmak için sc Servis konfigürasyonunu yönetmek ve sorgulama işlemleri için netsh Firewall konfigürasyonunu yönetmek için reg Registry’ye değer ekleme, okuma için
  • 39. MICROSOFT İMZALI UYGULAMALAR KULLANARAK VERİ TOPLAMA ÖRNEĞİ HEDEF BİLGİSAYAR ÜZERİNDE SALDIRGANIN PLATFORMU ÜZERİNDE procdump.exe -accepteula -ma lsass.exe lsass.dmp mimikatz # sekurlsa::minidump lsass.dmp Switch to minidump mimikatz # sekurlsa::logonPasswords <....>
  • 40. BİLGİ TOPLAMA VE YETKİ YÜKSELTME – İlk Erişim Sonrası Analiz, Cepheyi Güçlendirme ve Yetki Yükseltme • Bilgi toplama script ve araçlarını ele geçirilen platforma yükleme ve çalıştırma • Local exploit çalıştırarak yetki yükseltme • Bir konfigürasyon zaafından faydalanarak yetki yükseltme • Elde edilen arka kapının sürekliliğini sağlama • İşlemci gücünü kullanma amacıyla sisteme erişildiyse: • DDOS amaçlı ise gerekli araçları yükleme ve emirler için Command & Control sunucusuna bağlanmaya başlama • Crypto Mining amaçlı ise gerekli araçları yükleme ve yine komuta sunucusuna bağlanmaya başlama TİPİK SALDIRI YÖNTEMLERİ
  • 41. BİLGİ TOPLAMA VE YETKİ YÜKSELTME – Yetki Yükseltme Sonrası Daha Fazla Bilgi Toplama • Parola hash’lerini ele geçirme • Bellekten parola çalma • Registry’den VNC parolası, browser’lar tarafından saklanan erişim bilgileri, WinScp tarafından saklanan erişim bilgileri gibi pek çok erişim bilgisini ele geçirme • Domain ve diğer sistemlerle ilgili bilgi toplama • Diğer dosyaları inceleme • Diğer sistemlere yönelik taramalara başlama TİPİK SALDIRI YÖNTEMLERİ
  • 42. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ whoami Kullanıcı adı id Kullanıcı id’si ve grupları hostname Sunucu adı uname -a Sistem ve kernel bilgisi cat /etc/*-release İşletim sistemi bilgisi lscpu İşlemci mimari bilgisi /sbin/ifconfig -a Tüm ağ arayüzlerinin listesi echo $HOME “home” dizinimiz ls -ahl ~ “home” dizin içeriğimiz ve erişim hakları printenv Environmental variable değerleri TEMEL BİLGİLER
  • 43. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ find / -type d -not -path "/proc/*" ( -perm -o+w ) -exec ls -ald {} ; Herkesin yazabileceği dizinlerin listesi last Son kullanıcı aktiviteleri netstat -antp TCP servislerin ve ilgili proseslerin listesi netstat -anup UDP servislerin ve ilgili proseslerin listesi TEMEL BİLGİLER
  • 44. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ cat /etc/passwd passwd dosyası grep -v -E '^#' /etc/passwd | awk -F: '$3 == 0{print $1}' root - yani id’si 0 olan - kullanıcıların listesi for i in $(cat /etc/passwd 2>/dev/null| cut -d':' -f1 2>/dev/null);do id $i;done 2>/dev/null | grep -i "sudo" sudo grubuna üye kullanıcılar for i in $(cat /etc/passwd 2>/dev/null| cut -d':' -f1 2>/dev/null);do id $i;done Kullanıcıların grup üyelikleri cat /etc/group group dosyası cat /etc/shadow shadow dosyası – görebiliyorsak DİĞER KULLANICILARLA İLGİLİ BİLGİLER
  • 45. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ ls -ahlR /root/ /root/ dizini altındaki dosyalar ve erişim hakları ls -ahlR /home/ /home/ dizini altındaki dosyalar ve erişim hakları find /home/ -perm -4 -type f -exec ls -al {} ; /home/ dizini altındaki okunabilir dosyaların listesi DİĞER KULLANICILARLA İLGİLİ BİLGİLER
  • 46. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ sudo -l -n 2>/dev/null | tee sudo-config-enum.txt sudo haklarımız cat sudo-config-enum.txt 2>/dev/null | grep -i -E 'vi|awk|perl|find|nmap|man|more|less|tcpdum p|bash|sh|vim|nc|netcat|python|ruby|lua|irb' Shell escape imkanı veren sudo haklarımız sudo -V sudo versiyonu (sudoedit açıklığını kullanmak için) ls -al /etc/sudoers sudoers dosyası erişim hakları cat /etc/sudoers sudoers dosyası içeriği - görebiliyorsak SUDO BİLGİLERİ
  • 47. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ ls -la /etc/cron* /etc/cron dizinlerinde bulunan dosyalar ve erişim hakları find /etc/cron* -perm -0002 -exec ls -la {} ; -exec cat {} 2>/dev/null ; Other tarafından yazılabilir crontab dosyaları ve içerikleri cat /etc/crontab /etc/crontab dosyası içeriği ls -laR /var/spool/cron Varsa root ve diğer kullanıcıların crontab dosyaları listesi find /var/spool/cron/ -type f -exec tail -n +1 {} + Varsa root ve diğer kullanıcıların crontab dosyaları içerikleri ls -laR /etc/cron.d Varsa /etc/cron.d dizininde bulunan dosyaların listesi find /etc/cron.d/ -type f -exec tail -n +1 {} + Varsa /etc/cron.d dizininde bulunan dosyaların içerikleri CRON JOB BİLGİLERİ
  • 48. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ cat /etc/anacrontab /etc/anacrontab dosyası içeriği cat /etc/passwd | cut -d ":" -f 1 | xargs -n1 crontab -l -u Varsa kullanıcıların aktif cron konfigürasyonları CRON JOB BİLGİLERİ
  • 49. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ find / -uid 0 -perm -4002 -type f -exec ls -al {} ; Sahibi “root” olan other tarafından yazılabilir setuid dosyalar find / -perm -4002 -type f -exec ls -al {} ; Other tarafından yazılabilir tum setuid dosyalar find / -perm -4000 -type f -exec ls -al {} ; Tüm setuid dosyalar cat setuid-files-enum.txt 2>/dev/null | grep -i -E 'vi|awk|perl|find|nmap|man|more|less|tcpdum p|bash|sh$|vim|nc$|netcat|python|ruby|lua|irb ' | grep -v -E 'chsh|device' Shell escape imkanı veren setuid dosyalar find / -uid 0 -perm -2002 -type f -exec ls -al {} ; Sahibi root olan other tarafından yazılabilir setgid dosyalar find / -perm -2002 -type f -exec ls -al {} ; Other tarafindan yazılabilir tum setgid dosyalar find / -perm -2000 -type f -exec ls -al {} ; setgid işaretli tüm dosyalar SETUID VE SETGID ERİŞİM HAKLI DOSYALAR
  • 50. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ find / > dirlist-enum.txt Daha sonra kullanmak üzere dizin ve dosya listesinin oluşturulması grep -i -E 'conf$|config$|cnf$' dirlist-enum.txt > conf-files-enum.txt Sonu conf, config ve cnf ile biten dosyaların listesi grep -i -E 'backup$|bck$|bak$|.old.*$' dirlist- enum.txt > backup-files-enum.txt Sonu backup, bck, bak, old ile biten dosyaların listesi grep -i -E 'inc$' dirlist-enum.txt > inc-files-enum.txt Sonu inc ile biten dosyaların listesi grep -i -E 'my.cnf$' dirlist-enum.txt | xargs -r ls -al my.cnf adlı dosyaların listesi grep -i -E 'my.conf$' dirlist-enum.txt | xargs -r ls - al my.conf adlı dosyaların listesi DOSYA VE İÇERİK TARAMA
  • 51. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ cat conf-files-enum.txt | xargs grep -i -E 'pass =|passwd =|pwd =| password =|user =|username =|pass=|passwd=|pwd=|password=|user=|usern ame=|mysql_connect|mysql_select_db' conf dosyaları içinde geçen password ve username satırları cat inc-files-enum.txt | xargs grep -i -E 'pass =|passwd =|pwd =| password =|user =|username =|pass=|passwd=|pwd=|password=|user=|usern ame=|mysql_connect|mysql_select_db' inc dosyaları içinde geçen password ve username satırları DOSYA VE İÇERİK TARAMA
  • 52. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ find / -name "id_dsa*" -o -name "id_rsa*" -o - name "known_hosts" -o -name "authorized_hosts" -o -name "authorized_keys" ssh anahtar ve anahtar dizinlerinin listesi find /etc -iname hosts.equiv -exec ls -la {} 2>/dev/null ; -exec cat {} 2>/dev/null ; hosts.equiv dosyasının erişim hakkı ve görebiliyorsak içeriği find /home -iname *.rhosts -exec ls -la {} 2>/dev/null ; -exec cat {} 2>/dev/null ; Görebildiğimiz tüm home dizinleri altında varsa rhosts dosyaları find /etc/init.d/ ! -uid 0 -type f 2>/dev/null |xargs -r ls -la root kullanıcısına ait olmayan ancak init.d dizini altında bulunan dosyaların listesi find /etc/rc.d/init.d ! -uid 0 -type f 2>/dev/null |xargs -r ls -la root kullanıcısına ait olmayan ancak rc.d/init.d dizini altında bulunan dosyaların listesi cat /etc/fstab Mount konfigürasyonu (reiserfs gibi sıradışı file system görürseniz exploit etmeyi deneyin) DİĞER BİLGİLER
  • 53. BİLGİ TOPLAMA [ENUMERATION] ENUMERATION KOMUT ÖRNEKLERİ ps aux | awk '{print $11}'|xargs -r ls -la 2>/dev/null |awk '!x[$0]++' Çalışan proseslerin imajları ve bunlara erişim hakları mysqladmin -uroot -proot version Mysql’e root - root erişim bilgileriyle erişebiliyor muyuz mysqladmin -uroot version Mysql’e boş parola ile root olarak erişebiliyor muyuz mysql --version Versiyon bilgileri psql –V Versiyon bilgileri apache2 -v 2>/dev/null; apache2ctl -M 2>/dev/null; httpd -v 2>/dev/null; apachectl -l 2>/dev/null Versiyon bilgileri perl -v; java -version; python -version; ruby -v Versiyon bilgileri DİĞER BİLGİLER
  • 55. YANAL HAREKET VE DAHA FAZLA BİLGİ TOPLAMA • PSExec • WMI • Powershell - WinRM • v.d. şekillerde diğer sistemlere erişme (terminal servisi, ssh, veritabanı, v.b.) TİPİK SALDIRI YÖNTEMLERİ
  • 56. TİPİK SALDIRI YÖNTEMLERİ YANAL HAREKET VE DAHA FAZLA BİLGİ TOPLAMA Ele geçirilen sistem kullanıcı adı ve parola bilgileri ile: • CrackMapExec (CME) • NMAP PSExec spray - nmap -p139,445 -- script=smb-psexec --script- args=smbuser=kullanici,smbpass=par01a <target> • spraywmi.py Python script'i gibi araçlarla elde ettikleri bilgilerle daha fazla sisteme erişmeye çalışabilirler. Elbette böyle bir tarama izlenen bir ortamda dikkat çekecektir.
  • 57. SALDIRGANLARIN DAHA FAZLA BİLGİYE ERİŞME İMKANLARI Ele geçirilen sistemler üzerinde saklanan erişim bilgilerini ele geçirebilirler, örneğin: • Tarayıcılar (browser) tarafından saklanan erişim bilgileri (ör: post/multi/gather/firefox_creds ve post/windows/gather/enum_chrome Metasploit post exploitation modülleri ile) • Winscp erişim bilgileri (ör: post/windows/gather/enum_winscp_pwds Metasploit post exploitation modülü ile) • v.d.
  • 59. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Windows Authentication Protokolleri ile İlgili Temel Konular • Parola hash'leri • Doğrulama protokolleri
  • 60. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Hash Problemleri: LM Hash'lerinin Zayıflığı
  • 61. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Hash Problemleri: LM Hash'lerinin Zayıflığı
  • 62. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Protokol Problemleri: Karşılıklı Kullanıcı Doğrulama Olmaması (Sahte Sunucu) Sabit 8 byte'lık Challenge değeri 1122334455667788 için hazır Rainbow table'ların bulunması
  • 63. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Protokol Problemleri: Reflective ve Relay Saldırıları
  • 64. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Protokol zayıflıkları için önerilen çözüm - Kerberos • Önerilen çözüm (elbette Domain ortamları için) Kerberos kullanıcı doğrulama protokolüdür. • Ancak bu protokolün de içsel problemleri olduğunu göreceğiz.
  • 65. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Pass The Hash (PTH) Saldırıları Bu konuyu tartışabilmek için önce SAM dosyasındaki parola hash'lerinin ve bellekteki parola hash'leri ile açık (cleartext) parolaların elde edilmesini konuşalım.
  • 66. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ SAM dosyasından Windows parola hash'lerinin elde edilmesi • Her Windows sunucu ve bilgisayarının lokal kullanıcılarının parola hash'leri SAM dosyasında bulunur. • Bu dosyaya çalışma anında erişim izni verilmez. Ancak DLL injection ve disk'e raw erişim sayesinde bu engeller atlatılabilir. Ayrıca bilgisayar diski kriptolu değilse bilgisayar farklı bir işletim sistemi'ne (ör: Linux) boot edilerek veya disk farklı bir bilgisayara takılarak SAM dosyası elde edilebilir.
  • 67. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ SAM dosyasından Windows parola hash'lerinin elde edilmesi • SAM dosyasındaki hash'ler kriptoludur, ancak kripto anahtarı da SYSTEM dosyası içindedir. Dolayısıyla bu dosyaya erişilmesi halinde parola hash'leri elde edilebilir.
  • 68. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ Bellekten hash ve cleartext (açık) parolaların elde edilmesi • Parola hash'lerinin ve dahası çeşitli güvenlik alt sistemleri tarafından ihtiyaç duyulan kriptolu (yani decrypt de edilebilen) normal parolaların bellekten elde edilmesi "Mimikatz" aracı ile mümkün olmuştur. • Bu aracın yöntemlerini uygulayan diğer araçlar da mevcuttur: • Invoke-Mimikatz (powershell) • Windows Credential Editor (WCE)
  • 69. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ Bellekten hash ve cleartext (açık) parolaların elde edilmesi Decrypt edilebilen parolaları bellekte saklayan güvenlik alt sistemlerinden bazıları aşağıdaki gibidir: • TsPkg - Security Service Provider (SSP) for Terminal Services: Terminal sunucularına Single Sign On (SSO) fonksiyonalitesi kazandırır. • Wdigest – Digest SSP Internet Explorer ve IIS erişimlerinde erişim bilgilerinin MD5 hash'i veya message digest olarak iletilmesini sağlar. • CredSSP – Uygulamanın kullanıcısının erişim yetkilerini uzaktaki servislere delege etmesi için kullanılır.
  • 70. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ Bellekten hash ve cleartext (açık) parolaların elde edilmesi • Parola hash ve cleartext (açık) hallerinin bellekte bulunması için Interaktif Logon gerçekleştirilmesi gerekmektedir. • Interaktif Logon Türleri: • Konsoldan (fiziksel olarak) logon olma • Terminal servisi veya VNC gibi arayüzlerden logon olma • Runas komutu ile farklı bir kullanıcı olarak komut satırından komut çalıştırma • PSExec aracını kullanırken –u seçeneği ile farklı bir kullanıcı olarak diğer bilgisayara erişme
  • 71. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ Bellekten hash ve cleartext (açık) parolaların elde edilmesi • Network Logon tipi erişimlerde bellekte parola hash ve açık halleri görülmemektedir. • Bunlara örnek olarak ağ paylaşımlarına bağlanma ve "- u" opsiyonu kullanmadan PSExec kullanımı verilebilir.
  • 72. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ Bellekten hash ve cleartext (açık) parolaların elde edilmesi • Anti-Virüs yazılımları tarafından iyi bilinen Mimikatz'in kullanılmasından kaçınmak için "procdump" adlı ve Microsoft imzalı Sysinternals aracı ile LSASS.EXE prosesinin adres alanı indirilebilir. • Daha sonra dump edilen bellek verisi Mimikatz veya Volatility ile analiz edilerek parola hash ve açık değerlerine ulaşılabilir. • https://medium.com/@ali.bawazeeer/using-mimikatz-to-get- cleartext-password-from-offline-memory-dump-76ed09fd3330
  • 73. SAM DOSYASINDAN VE BELLEKTEN PAROLA HASH'LERİNİN ELDE EDİLMESİ SAM dosyasından Windows parola hash'lerinin elde edilmesi • Parola hash'lerini dump edebilen ve başka işlevleri de olan çok sayıda araç mevcuttur: • Mimikatz (exe) • Invoke-Mimikatz (powershell) • Meterpreter payload'u "hashdump" fonksiyonu • pwdump ve benzerleri
  • 74. LM ve NTLM KULLANICI DOĞRULAMA PROTOKOLLERİNDEKİ ZAYIFLIKLAR Pass The Hash (PTH) Saldırıları • LM, NTLM ve domain yapılarındaki Kerberos protokollerinde (Kerberos'a birazdan değineceğiz) anahtar olarak kullanıcı parolası değil de kullanıcının parola hash'i kullanıldığından hash bilgisi elde edilen bir kullanıcının parolası offline olarak kırılamasa bile hesabına erişilebilmektedir. • Örneğin Metasploit'in PSExec modülü kullanıcı parolası yerine PTH yöntemi ile kullanıcı parola hash'i kullanılarak erişimi desteklemektedir.
  • 75. (IMPERSONATION) DELEGATION TOKEN'LARIN ÇALINMASI Access Token'lar Nedir? • 2 tür Access Token vardır: • Primary Access Token: Bir proses'i çalıştıran kullanıcının haklarını taşıyan token'dır. • Impersonation Access Token: Bu token ile istemci sunucu mimarisinde çalışan servislerde sunucu istemci proses'in erişim haklarını taşır. • Delegation Token'lar impersonation token'ların sunucunun farklı bir bilgisayarda olduğu durumlarda kullanılan özel bir türüdür.
  • 76. (IMPERSONATION) DELEGATION TOKEN'LARIN ÇALINMASI Token'ın Çalınması Ne Demektir? • Hedef sistem üzerinde System kullanıcı haklarına ulaşan bir saldırgan sistemdeki diğer kullanıcılara ait olan token'ları çalabilir. • Bu token sayesinde domain admin yetkilerine sahip bir kullanıcının yerine geçilebilir. • Bu işlem için "incognito.exe" veya Meterpreter'in "incognito" uzantısı kullanılabilir.
  • 78. WINDOWS KERBEROS UYGULAMASININ SAĞLADIĞI İMKANLAR Golden Ticket / Silver Ticket (Pass The Ticket – PTT)
  • 79. WINDOWS DOMAIN KULLANICI HASH'LERİNİN ELDE EDİLMESİ Domain Parola Hash'lerinin Elde Edilme Yolları • "vssadmin" aracı ile Volume Shadow Copy alarak. • PowerSploit NinjaCopy powershell script'i ile disk'e raw formatta erişerek (bu şekilde NTDS.dit dosyasına erişim kontrolleri aşılmaktadır). • Mimikatz'in DCSync özelliği kullanılmak suretiyle Backup Domain Controller gibi davranılarak (bu şekilde reversible tutulan parolaların cleartext formatta da ele geçirilmesi mümkün olmaktadır). • Tüm bu işlemler için doğal olarak domain admin kullanıcılarından birisinin parolası çalınmış olmalıdır.
  • 80. WINDOWS DOMAIN KULLANICI HASH'LERİNİN ELDE EDİLMESİ NTDS.dit'in Çalınmasının Diğer Sonuçları • NTDS.dit dosyası herhangi bir şekilde elde edilmiş bir domain'de olabilecek diğer risklere örnekler aşağıdaki gibidir: • PC v.d. disklerin kriptolanması için kullanılmış ve Domain Controller'da yedeklenmiş Bitlocker anahtarları (https://blog.quarkslab.com/quarks-pwdump.html) • LAPS (Local Administrator Password Solution) lokal administrator kullanıcı parolaları (değiştirme aralıkları kısa ise kısa bir süre kullanılabilecektir)
  • 81. GOLDEN TICKET Golden Ticket Nedir? • Domain admin olmuş bir saldırganın domain parola hash'lerini elde etmek istemesinin en önemli nedenlerinden birisi KRBTGT kullanıcısının parola hash'ini elde edebilecek olmasıdır. • Bu kullanıcı tüm TGT'leri imzalayan kullanıcı olduğundan saldırgan kendisine uzun süreli (ör: 10 yıl) bir TGT üretebilir. • Bu kullanıcının gerçekte var olması bile gerekmez, Domain Admins grubuna (RID-512) dahil olması yeterli olacaktır. Pek çok sistem log'unda (ör: MSSQL Sunucusunda) kullanıcı adı olarak da verilen kullanıcı adı görünecektir.
  • 82. GOLDEN TICKET Golden Ticket'tan Nasıl Kurtulunur? • Saldırganın ürettiği TGT'nin geçersiz olması için KRBTGT kullanıcısının parolasının 2 defa sıfırlanması gerekir. 1 defa sıfırlandığında eski parola ile ticket almış kullanıcıların kesintiye uğramaması için eski parola sistem tarafından hatırlanır. • Öntanımlı olarak TGT geçerlilik süresi 10 saat'tir. Dolayısıyla sistemde bir aksama olmaması için 2 sıfırlama arasında 10 saat beklenebilir.
  • 83. SILVER TICKET Silver Ticket Nedir? • Bu yöntemde hedeflenen servise yönelik sahte bir Service Ticket üretilmesi ve servise yetkisiz erişim sağlanması hedeflenir. • Bunun için hedef servis kullanıcısının parola hash'inin elde edilmiş olması gereklidir. • Mimikatz ile şu bilgiler kullanılarak Silver Ticket üretilebilir: Domain SID (whoami /user komutuyla elde edilebilir), Target (hedef servisin SPN-Service Principle Name bilgisi, ör: sql01.btr.local:1433) , Service (hedef servis, ör: MSSQLSvc), User (var olması gerekmez) ve Group
  • 84. KERBEROASTING Kerberoasting Nedir? • Bu yöntemde servis kullanıcılarının parolalarının kırılmasının yanı sıra Silver Ticket üretmede olduğu gibi ilgili servise yönelik alınan Service Ticket'ın (ST) içindeki kullanıcı bilgilerinin değiştirilmesi de hedeflenebilir. • Kerberoasting yöntemi ile Silver Ticket üretebilmek için Domain Admin haklarına sahip olmak da gerekmez. Ancak servis hesabının parolasının kırılabilecek kadar, yani bir sözlük saldırısıyla tespit edilebilecek kadar zayıf olması gerekir. • Kerberoasting için SPN bilgilerini ve Service Ticket elde etmek için çeşitli VBS, Python (ör: Impacket) ve powershell (ör: Empire) scriptleri mevcuttur. Daha sonra servis parolasının kırılması gerekecektir.
  • 85. KERBEROASTING Kerberoasting'in Handikap'ı Nedir? • Üretilen Service Ticket (ST) içindeki PAC (Privileged Access Certificate) imzalarından KRBTGT tarafından imzalanan veri doğru olmayacaktır (diğer imza servis hesabının parola hash'i ile imzalandığından ve bu bilgiye sahip olduğumuzdan doğru olacaktır). • Ancak performans gerekçesiyle KRBTGT kullanıcısının imzası genellikle kontrol edilmez. Bu nedenle önemli bir engel olmayacaktır.
  • 86. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WMI – Windows Management Instrumentation • WMI altyapısı uzaktan WMI provider nesnelerine ve bunların metodlarına erişim imkanı verir. Dolayısıyla bu metodların sağladığı hem bilgi toplama (enumeration) hem de işlem gerçekleştirme imkanlarına sisteme diğer şekillerde erişmeden sahip olabiliriz. • Ayrıca WMI'ın sağladığı Eventing imkanı ile belli durumlarda tetiklenen backdoor'lar kurulabilir. WMI'ın sağladığı bu imkan diske (dosya oluşturma anlamında) değmeden faaliyet gösterme imkanı vermektedir. Hacker'lar tarafından bu duruma LIVING OFF THE LAND adı verilmektedir.
  • 87. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WMI – Windows Management Instrumentation ARAÇLAR • Powershell: WMI erişimleri için en sık kullanılan araç powershell commandlet'leridir. • wmic.exe: Tüm Windows bilgisayarlarda mevcut olduğu için saldırgan açısından daha az dikkat çekmeye yardımcı olur. • wmiexec.py: Impacket Python modülünün örnek WMI erişim aracı. • Metasploit wmiexec modülü. • Linux üzerinde çalışan wmic, pth-wmic, wmis, pth-wmis (PTH yapabilen wmis) araçları. • v.d. scriptler.
  • 88. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WMI Backdoor İmkanı • WMI Eventing altyapısı sayesinde bir persistence (kalıcılık) imkanı kazanılabilir. • Kalıcı (persistent) bir event kaydı (subscription) için aşağıdaki üç faktöre ihtiyaç vardır: • Event Filter: Bir kullanıcının logon olması, sistemin yeniden başlatılması veya farklı bir olay tarafından tetiklenecek tanım • Event Consumer: Filter tetiklendiğinde gerçekleştirilecek faaliyet • Filter to Consumer Binding: Filter ve Consumer'ı birbirine bağlayan tanım
  • 89. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WMI Backdoor İmkanı • Event Consumer türleri: • LogFileEventConsumer – Olay verisini belli bir log dosyasına yazar • ActiveScriptEventConsumer – Bir gömülü VBScript veya Jscript çalıştırır • NTEventLogEventConsumer – Olay verisini bir Windows event kaydı olarak yazar • SMTPEventConsumer – Olay verisini e-posta ile gönderir • CommandLineEventConsumer – Bir komut satırı uygulaması çalıştırır
  • 90. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WMI Backdoor İmkanı – Bir Örnek
  • 91. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI WinRM – Windows Remote Management • WinRM Powershell Remoting (Powershell komutlarını uzaktaki bilgisayarın konsolundaymış gibi çalıştırma imkanı) ve CIM ile başlayan WMI provider sınıflarını çalıştırma amaçları ile kullanılabilir. • HTTP (TCP 5985) veya HTTPS (TCP 5986) protokolleri ile SOAP mesajları ile erişilebilir. • Açık olması halinde WMI gibi lateral movement amacıyla kullanılabilir, ancak genellikle öntanımlı olarak kapalıdır. • Uzaktan psexec, wmiexec gibi bağlantılarla etkinleştirilebilir. https://pentestlab.blog/2018/05/15/lateral-movement-winrm/
  • 92. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI DCOM – Distributed Component Object Model • DCOM Microsoft'un dağıtık kod altyapısının bilgisayarlar arasında kullanılmasını destekleyen mimarisidir. • Bu altyapı kullanılarak bir bilgisayardaki bir process bir başka bilgisayardaki COM nesnesine (yapılan bazı registry tanımları sonrasında) erişerek kullanabilir. • Powershell veya farklı bir uygulama dili kullanılarak Excel.Application, MMC20.Application, ShellWindows, ShellBrowserWindow, Visio.Application, Visio.InvisibleApp , Outlook.Application, Word.Application gibi application id'leri ile farklı bir bilgisayar üzerinde komut çalıştırılabilir. https://www.cybereason.com/blog/dcom-lateral-movement-techniques
  • 93. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI Named Pipe İmkanı • Named Pipe'lar anonim pipe'larda ("|") olduğu gibi okuma ve yazma imkanları verirler ve (Windows işletim sistemi için) SMB protokolü üzerinden de erişilebilirler. • Uzaktan kötüye kullanım imkanı olma ihtimali düşük olsa da zararlı yazılımlar tarafından ve saldırganların lateral movement çabalarının bir parçası olan backdoor oluşturmak için sıklıkla kullanılırlar. • Yapılan erişimler SMB portlarına yapılacağından backdoor zararlı yazılımı tarafından açılacak bir port kadar dikkat çekmezler.
  • 94. WINDOWS AĞLARIYLA GELEN LATERAL MOVEMENT İMKANLARI Diğer Bilgisayarlarda İşlem Yapma İmkanı Veren Diğer Komutlar • SCHTASKS: Uzaktaki bilgisayar üzerinde zamanlı iş tanımlama • SC: Uzaktaki bilgisayar üzerinde servis tanımlama
  • 95. DOMAIN CONTROLLER ÜZERİNDEKİ SYSVOL PAYLAŞIMINDAN VERİ SIZMASI • DC sunucuları üzerindeki SYSVOL dizinlerinde yer alabilecek script'lerin içinde kullanıcı erişim bilgileri yer alabilir.
  • 96. WINDOWS APPLOCKER KONTROLÜNÜ AŞMA İMKANLARI • Windows ile gelen ve Powershell.exe gibi çalıştırılabilir kodların hash değerleri ile yapılan uygulama çalıştırma engelleme kontrolü aynı işlevi sağlayan farklı uygulamalar ile aşılabilir. • https://www.roelvanlisdonk.nl/2010/03/16/how-to-execute- powershell-scripts-from-c-with-an-execution-policy-unrestricted/ • https://pentestlab.blog/2017/05/11/applocker-bypass-regsvr32/ • https://pentestlab.blog/2017/05/29/applocker-bypass-msbuild/ • https://pentestlab.blog/2017/06/16/applocker-bypass-msiexec/ • Metasploit modülü exploit/windows/misc/regsvr32_applocker_bypass_server
  • 98. SÜREÇ 1901 yılında kurulan NIST 1987 tarihli “Computer Security Act” ile ABD kamu kurumlarına yönelik standartların geliştirilmesi için görevlendirilmiştir. NIST bunun üzerine Special Publication 800 serisini geliştirmeye başlamıştır.
  • 99. Security Operations Center – SOC Ana Tema: İzleme 7/24 telekom altyapılarını izleyen NOC konseptinin siber güvenlik alanında uygulamasıdır. ORGANİZASYONEL TANIMLAR
  • 100. Computer Emergency Response Team – CERT Ana Tema: Koordinasyon ve Bilgilendirme 2 Kasım 1988 yılında ilk internet worm’larından olan Morris zararlı yazılımı Cornell Üniversitesi yüksek lisans öğrencisi olan Robert Tappan Morris tarafından harekete geçirilmiştir. Bu kişi aynı zamanda o dönemde NSA’de çalışan kriptoloji uzmanı Robert Morris’in oğludur. İlk saldırı MIT üniversitesi sistemlerinden başlatılmıştır. Zararlının amacı bu olmasa da sistemlerin defalarce enfekte olmaları sonucu sistemler kesintiye uğramıştır. Bu saldırı 1986 yılında yayınlanmış olan Computer Fraud and Abuse Act kapsamındaki ilk mahkumiyetle de sonuçlanmıştır. Bu gelişme üzerine DARPA fon desteği sağlayarak Carnegie Mellon Üniversitesi bünyesinde Computer Emergency Response Team / Coordination Center – CERT/CC kurdurmuştur. ORGANİZASYONEL TANIMLAR
  • 102. Computer Security Incident Response Team – CSIRT Ana Tema: Olay Müdahalesi Olay gerçekleştikten sonra müdahale sürecini yöneten ve gerçekleştiren çok disiplinli ekiplere verilen addır. CISO veya daha üstü seviyede bir ekip lideri veya yönetici sponsor himaye ve yönetiminde olmalıdır. Siber olayın halkla ilişkiler, insan kaynakları, hukuki mesuliyetler boyutları için gerekli üyeler CSIRT içinde geçici de olsa bulunmalıdır. Incident Response Plan – IRP çalışmaları önceden yapılmalıdır. ORGANİZASYONEL TANIMLAR
  • 103. GÜVENLİK YÖNETİMİNİN ANA PARÇALARI YÖNETİŞİM GÜVENCE OPERASYON
  • 104. Yönetişim katmanının ve güvenlik organizasyonu içindeki iletişimin önemi KALECİ VE TAKIMIN KALANI ARASINDAKİ İLİŞKİLER
  • 105. Yönetişim katmanının ve güvenlik organizasyonu içindeki iletişimin önemi • Mimari değişiklikler ve dönüşüm projeleri hakkında olay tespit ve müdahale ekibinin bilgilendirilmesi, görüşlerinin alınması • Denetim ve sızma testi sonuçlarına olay tespit ve müdahale ekibinin de erişmesi ve incelemesi • Tespit edilen olaylar sonrasındaki post-mortem analiz raporlarının disiplinli bir biçimde hazırlanması ve yönetişim ekibi tarafından risk analizi, düzeltici faaliyet planlama v.d. aktivitelerde ciddiyetle ele alınması • Güvenlik anahtar performans göstergelerinin (KPI) yönetimi KALECİ VE TAKIMIN KALANI ARASINDAKİ İLİŞKİLER
  • 106. Yönetişim katmanının ve güvenlik organizasyonu içindeki iletişimin önemi • Olay tespit ve müdahale ekibine çok kullanılan lokal exploit açıklıkları ve remote açıklıklarla ilgili bilgi sahibi olabilmeleri için yama geçilme bilgilerinin sağlanması (veya bu bilgileri çekecek mekanizmaları kurabilmelerine imkan verilmesi) • Kırmızı takım tatbikat ve çalışmalarının yürütülmesi, izleme ekiplerinin bu çalışmalara hem (ofansif tarafta) katılımı hem de izleme faaliyetlerinin etkinliklerinin ölçülmesi • Ofansif görevlerde çalışmış uzmanların (sızma testi uzmanları) izleme ekiplerine geçişlerine imkan verilmesi • Tespit ve müdahale ekibinin Tehdit İstihbaratı ile desteklenmesi KALECİ VE TAKIMIN KALANI ARASINDAKİ İLİŞKİLER
  • 107. Playbook’lar (Oyun Taktik Planları) • Oltalama sosyal mühendislik saldırısı • Zararlı yazılım bulaşması • DDOS saldırısı • Web uygulama saldırısı • Personelin veri sızdırması, v.d. SÜREÇSEL HAZIRLIK AŞAMASI
  • 108. Örnek oltalama sosyal mühendislik saldırısı playbook SÜREÇSEL HAZIRLIK AŞAMASI TESPİT ET
  • 109. SÜREÇSEL HAZIRLIK AŞAMASI ANALİZ ET Örnek oltalama sosyal mühendislik saldırısı playbook
  • 110. SÜREÇSEL HAZIRLIK AŞAMASI SINIRLANDIR / TEMİZLE Örnek oltalama sosyal mühendislik saldırısı playbook
  • 111. SÜREÇSEL HAZIRLIK AŞAMASI GERİ DÖNDÜR Örnek oltalama sosyal mühendislik saldırısı playbook
  • 112. SÜREÇSEL HAZIRLIK AŞAMASI OLAY SONRASI DEĞERLENDİR Örnek oltalama sosyal mühendislik saldırısı playbook
  • 113. CRIME PREVENTION THROUGH ENVIRONMENTAL DESIGN – CPTED ÇEVRESEL TASARIM VASITASIYLA SUÇU ENGELLEME TEKNİK HAZIRLIK AŞAMASI
  • 114. Tehdit yüzeyi analizi ve güvenlik alanlarının (domain’lerinin) tespiti • Kurumsal veri analizi • Kurumsal veri envanteri, yaşam döngüleri ve saklanma alanlarının belirlenmesi • Kurumsal veri sınıflarının ve korunma ihtiyaçlarının belirlenmesi • Hizmet sürekliliği açısından kritik sistem, ağ altyapısı ve uygulamaların belirlenmesi • Uygulama katmanında iş etki analizi gerçekleştirilerek kritik uygulamalar ve destekleyen sistemlerin belirlenmesi • Belirlenen uygulamalar ve sistemlerle ilgili mevcut yedekleme altyapılarının tespiti TEKNİK HAZIRLIK AŞAMASI
  • 115. Tehdit yüzeyi analizi ve güvenlik alanlarının (domain’lerinin) tespiti • Ağ topolojisinin değerlendirilmesi • Kablosuz ağ bağlantıları ve kullanıcı profilleri • VPN bağlantıları ve kullanıcı profilleri • Dışarıdan içeriye doğru extranet bağlantıları • Şubeler ve uzak lokasyonlar • İnternet’e açık servisler • İnternet’e açık uygulamalar ve kullanıcı profilleri • Sunucu ve kritik verilerin bulunduğu ağ segment’leri, bu segmentlere erişim kontrolleri • Felaket kurtarma merkezi bağlantıları • Kullanıcı ağ segmentleri • Yazıcı ağ segmentleri • VOIP ağ segmentleri • Kullanıcı bilgisayar, laptop ve akıllı cihazları envanteri • Yoğun ziyaretçi trafiği olan veya off-shore’da bulunan cihazlar (ör: kiosk, ATM, v.d.) • Çeşitli katmanlarda kullanılan bulut hizmetleri ve hosting hizmeti alınan durumlar TEKNİK HAZIRLIK AŞAMASI
  • 116. Tehdit yüzeyi analizi ve güvenlik alanlarının (domain’lerinin) tespiti • Kurum dışı ile paylaşılan veriler ve üçüncü taraf güvenliği ile ilgili endişelerin belirlenmesi • İş birimlerinden ve BT operasyon birimlerinden veri paylaşılan üçüncü tarafların listesinin alınması • Her bir üçüncü taraf ve paylaşım durumu için gerekli veri koruma ihtiyaçlarının belirlenmesi • Dışarıdan bakım hizmeti alınan, kiralanan ve yerinde veya uzaktan erişilen varlıkların belirlenmesi • Sunucular • Yazıcılar • PC’ler • Altyapı donanımları (UPS, telefon santrali v.d.) TEKNİK HAZIRLIK AŞAMASI
  • 117. Tehdit yüzeyi analizi ve güvenlik alanlarının (domain’lerinin) tespiti • Güvenli yazılım ve sistem geliştirme süreçlerinin yeterliliklerinin değerlendirilmesi • Yukarıdaki değerlendirmelerin periyodik (en az yılda 1 defa) olarak tekrar edilmesi TEKNİK HAZIRLIK AŞAMASI
  • 118. Tehdit yüzeyinin daraltılması ve saldırı ihtimalinin azaltılması • Erişen kullanıcı profiline uygun olarak ağ bölümlemesi mimarisinin kurulması, eksikliklerin giderilmesi için hemen uygulanabilecek kontrollerin uygulanması, diğerleri için proje planlarının oluşturulması • HTTP(S), DNS, Windows Update ve diğer servisler için dışarı yönlü trafiğin belirli sunucularla kısıtlanması • İçeriden dışarıya tüm uç noktalar ve sunucular için filtreleme uygulanması • Uç noktalar ve geçit sunucuları üzerinde (Web Proxy, SMTP) DLP çözümlerinin devreye alınması TEKNİK HAZIRLIK AŞAMASI
  • 119. Tehdit yüzeyinin daraltılması ve saldırı ihtimalinin azaltılması • Uç nokta ve kurum dışına çıkan cihazlar üzerinde uygulanabilecek donanımsal port kısıtlama ihtiyaç ve imkanlarının değerlendirilmesi • Kriptografik kontrol uygulama ihtiyaçlarının belirlenmesi (uç noktalar, akıllı cihazlar, veri iletim ve depolama ortamları için) • Kurum dışı ile veri paylaşılan durumları minimize etme, veriyi paylaşmak yerine uygulama üzerinden verilere erişim imkanı sağlama, gerekli durumlarda kurum verilerini veri paylaşılan taraflarda izole tutma imkanlarını araştırma TEKNİK HAZIRLIK AŞAMASI
  • 120. Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım ve geliştirme planlamasının yapılması • Sunucular • Windows sunucular için güvenlik ve gerekli ise ek (ör: sysmon, dhcp, dns, veritabanı, kritik uygulama, v.d.) log toplama ihtiyaç ve imkanlarının değerlendirilmesi • Unix / Linux sunucular için güvenlik log toplama ihtiyaç ve imkanlarının değerlendirilmesi • Veritabanı sunucuları için özel log toplama ihtiyaç ve imkanlarının değerlendirilmesi • Kritik sistemler için File Integrity Monitoring (FIM) ihtiyaç ve imkanlarının değerlendirilmesi TEKNİK HAZIRLIK AŞAMASI
  • 121. Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım ve geliştirme planlamasının yapılması • Network cihazları • Flow verisi toplama ihtiyaç ve imkanlarının değerlendirilmesi • Network cihazları üzerinde yapılan işlemlerin (AAA sunucu imkanları kullanılarak) loglama ihtiyaç ve imkanlarının değerlendirilmesi • Firewall’lar • Ağ segment ihtiyaçlarına uygun olarak bölümleme gerçekleştirebilecek firewall ihtiyaç ve imkanlarının değerlendirilmesi • Firewall’lar üzerindeki drop ve forward edilen paket loglama ihtiyaç ve imkanlarının değerlendirilmesi TEKNİK HAZIRLIK AŞAMASI
  • 122. Sensör yeterliliklerinin değerlendirilmesi, sensör yatırım ve geliştirme planlamasının yapılması • VPN geçitleri • VPN bağlantı loglama imkanlarının değerlendirilmesi • Uç noktalar ve güvenlik sunucuları • Anti malware loglama imkanlarının değerlendirilmesi • EDR çözümü ihtiyaç ve imkanlarının değerlendirilmesi • DLP ihtiyaç ve imkanlarının değerlendirilmesi • Fiziksel erişim kontrol cihaz ve sunucuları • Dosya veya veritabanı bağlantısı ile fiziksel erişim loglama imkanlarının değerlendirilmesi TEKNİK HAZIRLIK AŞAMASI
  • 123. Situational Awareness OLAY TESPİT VE MÜDAHALE EKİBİNİN DURUMSAL FARKINDALIĞININ KORUNMASI
  • 124. Güvenlik mimarisinin sürekliliği için proje yönetim sürecinin düzenlenmesi • Kurumun mevcut genel ve BT proje yönetim süreçleri içine önleyici ve tespit edici güvenlik kontrol ihtiyaçlarının tespiti, uygulanmasının takibi ve izleme süreçlerine dahil edilmesi için gerekli düzenlemelerin yapılması • Değişiklik yönetim sürecinde otorizasyona tabi olmadan herhangi bir değişikliğin yapılmasının, test v.b. amaçlarla yeterli güvenlik ve sıkılaştırma yapılmadan yeni bir sistemin ağa sokulmasının engellenmesi GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 125. Sistem sıkılaştırma prosedürleri • Sunucu, PC, ağ cihazı v.d. altyapılar bazında özellikle çok kurulumu yapılan sistemler için sıkılaştırma (gereksiz servislerin kapatılması, parola, güncelleme ve loglama politikalarının uygulanması, güvenlik çözümlerinin – anti malware, DLP, EDR, v.d. – kurulması) GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 126. Envanter ve güncelleme takibi • Güvenilir envanter takip dosya, liste ve sistemlerinin belirlenmesi ve periyodik olarak gözden geçirilmesi • Periyodik ağ taramaları (filtreleme kuralları gözde tutularak gerekli ağ segmentleri içinden) ve merkezi yönetim sunucularından alınacak listeler ile dokümante edilmiş envanter ile fiili envanterin karşılaştırılması • Log kayıtlarından tespit edilebilecek ağa yeni cihaz v.b. bağlantı durumlarının periyodik olarak gözden geçirilmesi ve dokümante edilmiş envanter ile karşılaştırılması GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 127. Erişim kontrol matrisinin sürekli gözden geçirilmesi ve yüksek yetkili kullanıcı hesaplarının / gruplarının merkezi olarak izlenmesi • Erişim kontrol matrislerinin kaynaklarının belirlenmesi • Yüksek yetkili kullanıcı listesinin oluşturulması • Yüksek yetkili kullanıcı erişim bilgileri log kaynaklarının belirlenmesi ve gerekli alarm durumlarının (yani anormal erişim durumlarının) belirlenmesi • Yüksek yetkili kullanıcı grup listesinin oluşturulması • Yüksek yetkili kullanıcı gruplarına ekleme loglarının kaynaklarının belirlenmesi ve alarm kurallarına eklenmesi GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 128. Denetim, zafiyet tarama ve pentest raporlarından faydalanma • Denetim raporlarından tespit edilen süreç bulgularının izlenmesi ve bunlara uygun olarak izleme stratejilerinin yeniden değerlendirilmesi • Zafiyet tarama ve pentest rapor bulgularının izlenmesi ve bunlara uygun olarak izleme stratejilerinin yeniden değerlendirilmesi • Bulgu ve düzeltici faaliyet kayıtlarındaki ilerlemelerin izlenmesi ve gecikilen alanlarla ilgili endişelerin gerekli yöneticilere iletilmesi, gerekli ise izleme stratejilerinin yeniden değerlendirilmesi GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 129. Denetim izi (audit log) ayarlarının belirlenmesi ve izlenmesi • Güvenlik izleme stratejisini destekleyecek log konfigürasyon ihtiyaçlarının belirlenmesi ve uygulanması • Periyodik olarak (mümkünse) uzaktan ve yerinde log ayarlarının izlenmesi için gerekli yöntem ve süreçlerin geliştirilmesi ve uygulanması • Periyodik olarak log optimizasyonu yapabilmek amacıyla log konfigürasyonlarında iyileştirmeye gidilmesi, gerekli noktalarda filtreleme uygulanması GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 130. Öncül veya yan belirti olarak kapasite kullanım ve kesinti takibi • Web taramalarında web sunucu CPU ve bellek kullanımlarındaki artış • Yine web uygulama taramalarında gözlenen 400 ve 500 yanıt kodlu hatalardaki artışlar • Ağ trafiğinde artış • Sunucu CPU ve bellek kullanımlarındaki artış (ör: crypto currency miner uygulamalarının sistem kaynaklarını tüketmesi sonucu) • Servislere yönelik exploit denemeleri sonucunda yaşanabilecek servis kesintilerinin izlenmesi GÜVENLİK SEVİYESİNİN SÜRDÜRÜLMESİ İÇİN GEREKLİ SÜREÇLERİN UYGULANMASI
  • 131. OLAY TESPİT VE MÜDAHALE TEMEL YETKİNLİK VE ARAÇLARI
  • 132. • Temel işletim sistemleri ve sunucuların güvenlik ihtiyaç ve imkanlarına hakimiyet • Ağ ve uygulama sızma testi ve temel saldırı teknikleri bilgileri • Temel TCP/IP ve çok kullanılan protokol bilgileri • Tersine mühendislik becerileri (PE dosya formatı, decompile ve disassemble edebilme ve assembly analiz yetkinlikleri) • Adli bilişim temel teknikleri bilgileri OLAY TESPİT VE MÜDAHALE TEMEL YETKİNLİKLERİ
  • 133. • Yanal hareket (lateral movement) tekniklerine ve bıraktıkları izlere hakimiyet • SIEM ve log yönetim araçları ile bunların kullandıkları altyapılara hakimiyet • İzleme ve uzaktan müdahale araçları üzerinde entegrasyon ve geliştirme yapabilme, ihtiyaca göre özel yazılımlar ve betikler geliştirebilme • Siber saldırılarda uygulanan yeni tekniklere ve yeni siber olay tespit ve müdahale kavram ve araçlarına sürekli merak duyma OLAY TESPİT VE MÜDAHALE TEMEL YETKİNLİKLERİ
  • 134. TEMEL ARAÇLAR Alarm Üreten Araçlar • Anti malware ve davranış tabanlı zararlı yazılım tespit çözümleri • Endpoint Detection and Response – EDR çözümleri • SIEM ve log yönetim yazılımları • IPS / IDS çözümleri • Web Application Firewall – WAF çözümleri
  • 135. TEMEL ARAÇLAR Log ve Oturum Verisi Üreten Araçlar • Router ve Firewall’lar (flow verisi) • AAA sunucular • İşletim sistemi sunucuları • Uygulama, veritabanı ve diğer servis sunucuları (DNS, DHCP, veritabanı, v.d.)
  • 136. Windows için • Endpoint Detection & Response (EDR) çözümleri • Sysmon [Applications and Services Logs > Microsoft > Windows > Sysmon > Operational] • Powershell Script Block Logging (Group Policy ile aktifleştirilebilir) [Applications and Services Logs > Microsoft > Windows > PowerShell > Operational] Linux için • auditd paketi GÖRÜNÜRLÜK KAVRAMI [VISIBILITY]
  • 137. • Konfigürasyon denetim ve zafiyet (vulnerability) tarama araçları • Honeypot kullanımı ve darknet izleme • Decompiler’lar ve disassembler’lar • Zararlı yazılım dinamik analizi için sandbox ortamları • Siber istihbarat bilgileri DİĞER ARAÇLAR
  • 138. • Veri sızıntıları (kredi kartı, müşteri verileri, v.d.) • Benzer alan adları • Sızan kullanıcı hesapları • Güncel sosyal mühendislik ve dolandırıcılık senaryoları • IP kara listeleri SİBER İSTİHBARAT HİZMETLERİ (VE GÜVENLİK ARAÇLARI İLE ENTEGRASYONU)
  • 139. • Hacim, hız, çeşitlilik • Cluster mimarisi – kaynak havuzu (resource pooling), yüksek erişilebilirlik (high availability), kolay ölçeklenebilirlik (easy scalability) ihtiyaçları • Veriyi alma ve işleme (ingesting), verinin saklama ortamında erişilebilir biçimde tutulması (persisting the data in storage), verinin işlenmesi ve analizi (computing and analyzing data), sonuçların görselleştirilmesi (visualizing the results) • NoSQL, JSON • Stream processing, in memory computing kavramları BÜYÜK VERİ KAVRAMLARI VE LOG YÖNETİMİ İLE İLGİLERİ
  • 140. • Log verisini anlamlandırma ve zenginleştirme ihtiyacının nedeni • Taxonomy – log türlerini ve kritikliklerini sınıflandırma • Zenginleştirme – log kaynaklarının rollerini belirtme, IP adreslerinden yola çıkarak coğrafi konum bilgisi ekleme • Normalizasyon – farklı log kaynaklarındaki benzer alan isimlerini standartlaştırma, aynı kullanıcıya ait farklı kullanıcı id’leri lookup listesi kullanarak tek isim olarak belirtme TEMEL LOG YÖNETİM KAVRAMLARI
  • 141. Snort iodine aracı ile yapılan DNS tünellemeyi tespit etme alert udp any any -> any 53 (content:"|01 00 00 01 00 00 00 00 00 01|"; offset: 2; depth: 10; content:"|00 00 29 10 00 00 00 80 00 00 00|"; msg: "covert iodine tunnel request"; threshold: type limit, track by_src, count 1, seconds 300; sid: 5619500; rev: 1;) alert udp any 53 -> any any (content: "|84 00 00 01 00 01 00 00 00 00|"; offset: 2;depth: 10; content:"|00 00 0a 00 01|"; msg: "covert iodine tunnel response"; threshold: type limit, track by_src, count 1, seconds 300; sid: 5619501; rev: 1;) ÖRNEK IDS KURALI
  • 142. Yara rule Stuxnet_Malware_2 { meta: description = "Stuxnet Sample - file 63e6b8136058d7a06dfff4034b4ab17a261cdf398e63868a601f77ddd1b32802" author = "Florian Roth" reference = "Internal Research" date = "2016-07-09" hash1 = "63e6b8136058d7a06dfff4034b4ab17a261cdf398e63868a601f77ddd1b32802" strings: $s1 = "SystemRootSystem32hal.dll" fullword wide $s2 = "http://www.jmicron.co.tw0" fullword ascii condition: uint16(0) == 0x5a4d and filesize < 70KB and all of them } ÖRNEK ZARARLI DOSYA TESPİT KURALI
  • 143. • 3 dk. içinde aynı kullanıcı adı ile farklı sunuculara 10’dan fazla başarılı veya başarısız erişim denemeleri yapılması. • Port tarama yapan bir sunucudan bir başka sunucuya başarılı bir logon olayı gerçekleştirilmesi. • Aynı kaynak IP adresinden bir web sunucusuna yapılan isteklere karşılık 3 dk. içinde 20’den fazla 404 statü kodlu yanıt döndürülmesi. ÖRNEK LOG ALARM VE SIEM KORELASYON KURALLARI
  • 144. • Dropper: Resources bölümünden veya uygulama içine gömülmüş çalıştırılabilir kodları dosya sistemine yerleştirme • Registry oluşturma: Sürekliliği (persistence) garanti altına almak üzere belirli registry key’lerine değer yazma • Servis oluşturma: Sürekliliği (persistence) garanti altına almak üzere drop ettiği veya sonradan dışarıdan çektiği bir çalıştırılabilir kod ile servis oluşturma • Dışarı yönlü erişim: HTTP(S), DNS, ICMP v.d. protokoller içinden tünelleme yöntemi ile dışarı kapı açma veya komuta kontrol (command & control) sunucusundan emir alma • Kodlanmış veya paketlenmiş kod dosyası formatında olma: Tersine mühendisliği zorlaştırmak için encoding ve packing metodları ile kendini gizlemeye çalışma ZARARLI YAZILIM DAVRANIŞLARINA ÖRNEKLER
  • 145. • Dosya adı • Dosya hash değeri • Proses adı • Servis adı • Kullanıcı adı • URL isteği • DNS sorgusu • Registry kaydı • Belli bir string’i veya veriyi içeren dosyalar • Belli API fonksiyonlarını import eden PE dosyaları, v.d. INDICATOR OF COMPROMISE (IOC) ÖRNEKLERİ Önemli: Hem dinamik hem de statik analizle belirlenmesinde fayda vardır. İsimler rassal bir biçimde de oluşturulabilir !
  • 146. Hazır araçlar ürettikleri trafikte belirli karakteristik izleri barındırırlar. Sıradan saldırganlar bu araçları genellikle öntanımlı ayarları ile kullandıklarından tespitleri daha da kolaydır. Bunlara örnek olarak şunları verebiliriz: • Metasploit (öntanımlı reverse bağlantı portu olarak 4444 portunun kullanımı) • Psexec spray saldırılarında başarılı olanları tespit etmek için kullanılabilir • Reverse lookup istekleri • Netcat • Tarama araçlarının karakteristik davranışları • Nmap’in ICMP echo request’e (ping’e) yanıt vermeyen sunucuların TCP 80 portuna bir de SYN paketi göndermesi • Nikto’nun taramalar için kullandığı User Agent başlığında Nikto adının geçmesi HAZIR SALDIRI ARAÇLARINI TANIMANIN FAYDALARI
  • 147. • Ben kimim ve grup üyeliklerim neler • Sistem üzerindeki diğer kullanıcılar ve grup üyelikleri neler • Dosyalar içinde komut satırından kelime arama • Dosya ve dizin erişim haklarının komut satırından sorgulanması • Servis ve task’ların listelenmesi • Sistem bilgileri ve geçilmiş yama bilgilerinin listelenmesi • Domain kullanıcılarının listelenmesi, v.d. SIRADAN KULLANICILARIN KULLANMAYACAKLARI KOMUTLARA ÖRNEKLER
  • 148. • Yasal mevzuata uygun kanıt toplama • Forensic kopyasının alınması ve kanıt hash’inin hesaplanması • Kanıt orjinallerinin güvenli biçimde saklanması • Logların mahkemede kabul edilebilirliği • Disk mimarisi, silinen dosyalar, kullanılmayan disk alanları, dosya son cluster’ları, dosya kazıma kavramları • Güvenilen çalıştırılabilir dosyaların enfekte olmuş veya yabancı / üçüncü parti dosyalardan ayrıştırılması ADLİ BİLİŞİM TEMEL KAVRAMLARI
  • 150. Önemli Security Windows Event ID’lerine Örnekler • 4624: An account was successfully logged on. • 4625: An account failed to log on. • 4720: A user account was created. • 4740: A user account was locked out. • 4732: A member was added to a security-enabled local group. • 4946: A change has been made to Windows Firewall exception list. A rule was added. • 5025: The Windows Firewall Service has been stopped. • 1102: The audit log was cleared. WINDOWS LOG ALTYAPISI
  • 152. SYSMON Logları SYSMON logları “Applications and Services Logs/Microsoft/Windows/Sysmon/Operational” dosyasında saklanır. SYSMON Event ID’leri: • 1: Process creation • 2: A process changed a file creation time • 3: Network connection • 4: Sysmon service state changed • 5: Process terminated • 6: Driver loaded • 7: Image loaded • 8: CreateRemoteThread • 9: RawAccessRead WINDOWS LOG ALTYAPISI
  • 153. SYSMON Logları SYSMON Event ID’leri [devamı]: • 10: ProcessAccess • 11: FileCreate • 12: RegistryEvent (Object create and delete) • 13: RegistryEvent (Value Set) • 14: RegistryEvent (Key and Value Rename) • 15: FileCreateStreamHash • 17: PipeEvent (Pipe Created) • 18: PipeEvent (Pipe Connected) • 19: WmiEvent (WmiEventFilter activity detected) • 20: WmiEvent (WmiEventConsumer activity detected) • 21: WmiEvent (WmiEventConsumerToFilter activity detected) • 22: DNSEvent (DNS query) WINDOWS LOG ALTYAPISI
  • 154. SYSMON Logları SYSMON konfigürasyon dosyası örneği: WINDOWS LOG ALTYAPISI
  • 155. Diğer Windows Event Log Dosyalarına Örnekler Yanal hareket [Lateral Movement] açısından önemli olabilecek diğer event loglarına örnek olarak aşağıdakiler verilebilir: Remote Desktop bağlantıları için Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-LocalSessionManager -> Operational Task Scheduler sistemi için Applications and Services Logs -> Microsoft -> Windows -> TaskScheduler -> Operational WINDOWS LOG ALTYAPISI
  • 156. SYSLOG Konfigürasyonu UNIX & LINUX SYSLOG ALTYAPISI
  • 157. Dosya formatındaki log’lar: • DNS • DHCP • WEB • Üçüncü taraf uygulamaların ürettiği log kayıt dosyaları GENEL LOG ALTYAPILARINDAN BAĞIMSIZ LOG KAYNAKLARI
  • 158. • WMI • SSH • SMB • SYSLOG • Veritabanı Erişimi • Diğer özel protokoller GENEL LOG TOPLAMA METODLARI
  • 159. SALDIRI ARAÇLARININ BIRAKTIKLARI İZLERE YÖNELİK ARAŞTIRMALAR https://www.jpcert.or.jp/english/pub/sr/20170612ac-ir_research_en.pdf
  • 160. SALDIRI ARAÇLARININ BIRAKTIKLARI İZLERE YÖNELİK ARAŞTIRMALAR
  • 161. • Zaman Çizgisi (Timeline) kavramı ve log kaynaklarının zaman senkronizasyonu • Logların saklanma süresi (yasal ve inceleme süre gereksinimleri) • Logların değiştirilemezliğinin güvence altına alınması (sayısal olarak imzalanması) DİĞER KONULAR
  • 162. Structured Threat Information Exchange [STIX] dili ve Trusted Automated Exchange of Intelligence Information [TAXII] protokolü DİĞER KONULAR https://stixproject.github.io/supporters/
  • 163. • Collaborative Automated Course of Action Operations for Cyber Security [CACAO] (https://www.oasis- open.org/committees/tc_home.php?wg_abbrev=cacao) - Playbook standardizasyonu • Open Command and Control [OPENC2] (https://www.oasis- open.org/committees/tc_home.php?wg_abbrev=openc2) - Askeri terim olarak komuta kontrol süreçlerinin standardizasyonuna yönelik yürütülen çalışmalar DİĞER KONULAR
  • 165. Elasticsearch ve Kibana container’larımızın başlatılması. ELASTICSEARCH VE KIBANA HAZIRLIK
  • 166. Elasticsearch container’ımızın başladığından emin olunması. ELASTICSEARCH VE KIBANA HAZIRLIK
  • 167. Kibana container’ımızın başladığından emin olunması. ELASTICSEARCH VE KIBANA HAZIRLIK
  • 168. Nikto web taraması tespiti için “Apache” web sunucu loglarımızı “sftp” erişim yöntemi ile toplayarak “Elasticsearch”e atacağız. NİKTO WEB TARAMA SENARYOSU LOG TOPLANACAK SUNUCUNUN IP ADRESİ
  • 169. Log toplamak için kullandığımız erişim bilgileri (credential’lar). NİKTO WEB TARAMA SENARYOSU
  • 170. Elasticsearch’te Apache Log’larının toplanması öncesinde Kibana’nın Dev Tools modülünü kullanarak ilgili index’i oluşturuyor ve sadece zaman alanı için mapping işlemini yapıyoruz. DELETE apache_logs [varsa index’i silmek için] PUT apache_logs [index’i oluşturmak için] [timestamp alanı mapping’i için] PUT apache_logs/_mapping { "properties": { "timestamp": { "type": "date", "format": "dd/MMM/yyyy:HH:mm:ss Z" } } } NİKTO WEB TARAMA SENARYOSU
  • 171. Elasticsearch’ün RESTFUL API’sine yönelik olarak Kibana’nın Dev Tools modülü ile bu komutları gönderebiliriz. NİKTO WEB TARAMA SENARYOSU
  • 172. Log toplama uygulamamızı başlatıyoruz. NİKTO WEB TARAMA SENARYOSU
  • 173. Sunucuya yönelik Nikto taramamızı başlatıyoruz. NİKTO WEB TARAMA SENARYOSU
  • 174. Apache loglarının toplandığından emin olabilmek için tüm kayıtlara yönelik bir sorgu yapalım. NİKTO WEB TARAMA SENARYOSU
  • 175. Elasticsearch üzerindeki apache_logs index’ine yönelik olarak clientip alanı bazında response kodu 404 olmuş olan HTTP isteklerinin istatistiğini sorgulayalım: GET apache_logs/_search { "size": 0, "query": { "bool": { "must": [ { "match": { "response": "404" } }, { "range": { "timestamp": { "gte": "now-180s" } } } ] } }, "aggs": { "by_src_ip": { "terms": { "field": "clientip.keyword" } } } } NİKTO WEB TARAMA SENARYOSU
  • 176. Response kodu 404 olan istemcileri sorguladığımızda Nikto taramasını yaptığımız bilgisayarın IP adresini görebiliyoruz. NİKTO WEB TARAMA SENARYOSU
  • 177. Bir Nikto taramasını tespit etmek için yapabileceğimiz bir başka sorgu da User Agent başlığında geçen Nikto kelimesini aramak olabilirdi: GET apache_logs/_search { "size": 0, "query": { "bool": { "must": [ { "match": { "agent": "Nikto" } }, { "range": { "timestamp": { "gte": "now-1800s" } } } ] } }, "aggs": { "by_src_ip": { "terms": { "field": "clientip.keyword" } } } } NİKTO WEB TARAMA SENARYOSU
  • 178. Agent alanında Nikto kelimesini aradığımızda da benzer bir sonuca ulaşabildik. NİKTO WEB TARAMA SENARYOSU
  • 179. Port tarama senaryosu için Logstash’i kullanacağız. Logstash’in log kayıtlarını göndermesi gereken Elasticsearch sunucu IP adresimizi control edelim. PORT TARAMA SENARYOSU
  • 180. Port tarama yapılacak hedef sunucu üzerinde Logstash’in logları göndereceği Elasticsearch sunucu IP adresini konfigüre edelim. PORT TARAMA SENARYOSU
  • 181. Logstash “tcpdump” çıktısını bekliyor, onu parse ediyor ve Elasticsearch sunucusuna iletiyor. input { tcp { port => 5000 type => tcpdump } udp { port => 5000 type => tcpdump } } filter { grok { match => ["message", "%{TIMESTAMP_ISO8601:timestamp} IP %{IP:src_ip}.%{INT:src_port} > %{IP:dst_ip}.%{INT:dst_port}"] remove_field => ["message"] add_tag => ["network","tcp_connection_started"] } } output { elasticsearch { hosts => ["192.168.171.135:9200"] index => "logstash-tcpdump" } stdout { codec => rubydebug } } PORT TARAMA SENARYOSU
  • 182. Logları toplamadan önce logstash-tcpdump index’ini silelim. PORT TARAMA SENARYOSU
  • 183. Yeni Logstash konfigürasyonumuzun aktif hale gelmesi için logstash servisini yeniden başlatalım. PORT TARAMA SENARYOSU
  • 184. Port taramasını gerçekleştirmek üzere hedef sunucu IP adresini kontrol edelim. PORT TARAMA SENARYOSU
  • 185. Port taraması hedefimiz üzerinde tcpdump’ı başlatarak logstash servisine yönlendirelim. PORT TARAMA SENARYOSU tcpdump -nS -i ens33 -s0 -tttt | nc -v localhost 5000
  • 186. Hedef sunucuya yönelik bir nmap taraması gerçekleştirelim. PORT TARAMA SENARYOSU
  • 187. Elasticsearch’e son 3 dk. içinde hedef sunucu ve TCP SYN paketi gönderen istemci bazında bir aggregation sorgusu yapalım. PORT TARAMA SENARYOSU
  • 188. Kullandığımız aggregation sorgusu. GET logstash-tcpdump/_search { "size": 0, "query": { "bool": { "must": [ { "match": { "tags": "tcp_connection_started" } }, { "range": { "@timestamp": { "gte": "now-180s" } } } ] } }, "aggs": { "by_src_ip": { "terms": { "field": "src_ip.keyword" }, "aggs": { "by_target_ip": { "terms": { "field": "dst_ip.keyword", "order": { "unique_port_count": "desc" } }, "aggs": { "unique_port_count": { "cardinality": { "field": "dst_port.keyword" } } } } } } } } PORT TARAMA SENARYOSU
  • 189. Impacket Psexec bağlantısı öncesi hedef Windows 10 bilgisayar üzerindeki Sysmon event loglarını silelim. IMPACKET PSEXEC BAĞLANTI SENARYOSU
  • 190. Sysmon loglarını toplayacağımız Windows 10 bilgisayarımızın IP adresini kontrol edelim. IMPACKET PSEXEC BAĞLANTI SENARYOSU
  • 191. Windows event loglarını toplamadan önce windows_event_logs index’ini silerek tekrar oluşturalım. IMPACKET PSEXEC BAĞLANTI SENARYOSU DELETE windows_event_logs PUT windows_event_logs
  • 192. Log toplama uygulamamız üzerinde WMI erişim bilgilerini düzenleyelim. IMPACKET PSEXEC BAĞLANTI SENARYOSU
  • 193. Log toplama uygulamamızı başlatalım. IMPACKET PSEXEC BAĞLANTI SENARYOSU
  • 194. Impacket kütüphanesini kullanabilmek için virtual environment’ımızı aktif hale getirelim. IMPACKET PSEXEC BAĞLANTI SENARYOSU
  • 195. Psexec.py aracı ile hedef Windows 10 bilgisayarımıza bağlanalım. IMPACKET PSEXEC BAĞLANTI SENARYOSU psexec.py Administrator:btrisk@192.168.171.128
  • 196. Elasticsearch’te toplanan loglar içinde psexec.py aracının kullandığı binary dosyanın hash değerini aradığımızda bu aracın kullanıldığını tespit edebiliyoruz. IMPACKET PSEXEC BAĞLANTI SENARYOSU 23873BF2670CF64C2440058130548D4E4DA412DD
  • 197. Windows event logları içinde dosya hash değerini aramak için kullandığımız sorgu. GET windows_event_logs/_search { "query": { "match": { "MessageText": "23873BF2670CF64C2440058130548D4E4DA412DD" } } } IMPACKET PSEXEC BAĞLANTI SENARYOSU