# Basic Win CMD for Pentesters
AWS hacklemeyi sıfırdan kahramanlık seviyesine öğreninhtARTE (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 =