Sızma Testleri Için Python
Total Page:16
File Type:pdf, Size:1020Kb
Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Sızma Testleri ˙Ic¸in Python BGM 531 - Sızma Testleri ve G ¨uvenlikDenetlemeleri Bilgi Guvenli¨ gi˘ Muhendisli¨ gi˘ Yuksek¨ Lisans Programı Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] ˙Istanbul S¸ehir Universitesi¨ 2018 - Guz¨ Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ˙Ic¸indekiler Persirai 1 Python 6 DDoS Saldırı Kategorileri 2 Python for Pentsters Giris¸ Paket Olus¸turma Arac¸ları TCP/IP Standardı Problem Dos/DDoS Saldırıları 3 Scapy Digital Attack Map Giris¸ 7 BotNets Ana Konsept Botnet 4 Ag˘ Tarama ve Saldırı RoBotNetwork TCP Port Taraması Botnet Propagation Detect fake TCP replies Botnet Arac¸ları IP protocol scan Dos/DDoS Arac¸ları Lab 8 DDoS Saldırıları 5 DDoS Giris¸ DDoS Saldırı Trendleri Yontemler¨ Mirai Saldırılar Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ˙Ic¸indekiler Persirai 1 Python 6 DDoS Saldırı Kategorileri 2 Python for Pentsters Giris¸ Paket Olus¸turma Arac¸ları TCP/IP Standardı Problem Dos/DDoS Saldırıları 3 Scapy Digital Attack Map Giris¸ 7 BotNets Ana Konsept Botnet 4 Ag˘ Tarama ve Saldırı RoBotNetwork TCP Port Taraması Botnet Propagation Detect fake TCP replies Botnet Arac¸ları IP protocol scan Dos/DDoS Arac¸ları Lab 8 DDoS Saldırıları 5 DDoS Giris¸ DDoS Saldırı Trendleri Yontemler¨ Mirai Saldırılar Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları PythonI Giris¸ I Topluluk destegi˘ oldukc¸a fazla olan betik dili: Python I Interactive interpreter I Text editors: Notepad++, gedit, vim Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları PythonII Degis¸kenler˘ I This is an int (signed, 32bits) : 42 I This is a long (signed, infinite): 42L I This is a str : "bellnx07nn" or ’bellnx07 nn’ I This is a tuple : (1,4,”42”) I You can’t add elements to a tuple. Tuples have no append or extend method. I You can’t remove elements from a tuple. Tuples have no remove or pop method. I Tuples are faster than lists. I This is a list : [4,2,”1”] I This is a dict : ”one”:1 , ”two”:2 Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Python III Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları StringsI Python String Slicing I You can reference any part of a string with brackets I Start from the beginning or the end I Always start counting from zero >>> filename ="C:\\Windows\\System32\\meterpreter.exe" >>> filename[0] ’C’ >>> filename[1] ’:’ >>> filename[-1] ’e’ >>> filename[-2] ’x’ >>> filename[3:10] ’Windows’ >>> filename[3:] ’Windows\\System32\\meterpreter.exe’ >>> filename.split("\\") [’C:’, ’Windows’, ’System32’, ’meterpreter.exe’] >>> filename.split(".") Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları StringsII [’C:\\Windows\\System32\\meterpreter’, ’exe’] String Concatenation I You can concat strings with + email = "ozgur.catak" + "@" + "tubitak.gov.tr" I You can append strings url = "http://10.10.10.10/get.php" url = url + "?param=1;DROP TABLE USERS" Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Strings III Syntax I No block delimiters. Indentation does matter. Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Python ListsI Python Lists I Used for storing a list of variables Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Python ListsII Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ˙Ic¸indekiler Persirai 1 Python 6 DDoS Saldırı Kategorileri 2 Python for Pentsters Giris¸ Paket Olus¸turma Arac¸ları TCP/IP Standardı Problem Dos/DDoS Saldırıları 3 Scapy Digital Attack Map Giris¸ 7 BotNets Ana Konsept Botnet 4 Ag˘ Tarama ve Saldırı RoBotNetwork TCP Port Taraması Botnet Propagation Detect fake TCP replies Botnet Arac¸ları IP protocol scan Dos/DDoS Arac¸ları Lab 8 DDoS Saldırıları 5 DDoS Giris¸ DDoS Saldırı Trendleri Yontemler¨ Mirai Saldırılar Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Paket Olus¸turma Arac¸larıI I Packet forging tool: forges packets and sends them I Sniffing tool: captures packets and possibly dissects them I Testing tool: does unitary tests. Usually tries to answer a yes/no question (ex: ping) I Scanning tool: does a bunch of unitary tests with some parameters varying in a given range I Fingerprinting tool: does some predefined eclectic unitary tests to discriminate a peer I Attacking tool: uses some unexpected values in a protocol Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Paket Olus¸turma Arac¸larıII Sniffing tools ethereal, tcpdump, net2pcap, cdpsniffer, aimsniffer, vomit, tcptrace, tcptrack, nstreams, argus, karpski, ipgrab, nast, cdpr, aldebaran, dsniff, irpas, iptraf, ... Packet forging tools packeth, packit, packet excalibur, nemesis, tcpinject, libnet, IP sorcery, pacgen, arp-sk, arpspoof, dnet, dpkt, pixiliate, irpas, sendIP, IP-packetgenerator, sing, aicmpsend, libpal, ... Testing tools ping, hping2, hping3, traceroute, tctrace, tcptraceroute, traceproto, fping, arping... Scanning tools nmap, amap, vmap, hping3, unicornscan, ttlscan, ikescan, paketto, firewalk,... Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Paket Olus¸turma Arac¸ları III Fingerpringing tools nmap, xprobe, p0f, cron-OS, queso, ikescan, amap, synscan, ... Attacking tools dnsspoof, poison ivy, ikeprobe, ettercap, dsniff suite, cain, hunt, airpwn, irpas, nast, yersinia, ... Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ProblemI Ornek¨ Senaryo: I ”padding data” ic¸eren ICMP echo istegi˘ I ”More fragments” bayragı˘ ic¸eren IP protokol taraması I ARP cache zehirlenmesi I DNS tunneling ile ”applicative payload” yukleme¨ Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ProblemII I Kullanılan arac¸ların yaptıkları yorumlar bazı durumlarda ag˘ kes¸fi ac¸ısından yeterli olmayabilir. Ornek¨ Interesting ports on 192.168.9.4: PORT STATE SERVICE 22/tcp filtered ssh Gerc¸ek durumda ne oldu? I No answer? I ICMP host unreachable ? from who ? I ICMP port administratively prohibited ? from who ? ) Bu arac¸ların yetenekleri olc¸¨ us¨ unde¨ ag˘ taranabilir. ) Onların goremedi¨ gini˘ farketmezsiniz. ) Bugs, kusurlar ... Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları ˙Ic¸indekiler Persirai 1 Python 6 DDoS Saldırı Kategorileri 2 Python for Pentsters Giris¸ Paket Olus¸turma Arac¸ları TCP/IP Standardı Problem Dos/DDoS Saldırıları 3 Scapy Digital Attack Map Giris¸ 7 BotNets Ana Konsept Botnet 4 Ag˘ Tarama ve Saldırı RoBotNetwork TCP Port Taraması Botnet Propagation Detect fake TCP replies Botnet Arac¸ları IP protocol scan Dos/DDoS Arac¸ları Lab 8 DDoS Saldırıları 5 DDoS Giris¸ DDoS Saldırı Trendleri Yontemler¨ Mirai Saldırılar Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Giris¸ Problem I 80 portunu ic¸eren C - sınıfını TCP syn ve belirli bir TTL tarayın I Hangi IP adreslerinin ”ICMP time exceeded” cevabı vermedigini˘ bulun. S¸u an ic¸in c¸oz¨ ¨um I hping ile her bir ip adresine packetleri gondermek¨ I tcpdump/Wireshark ile sonuc¸ları izlemek. Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları TCP/IP Modeli S¸ekil: TCP/IP Modeli 1 1http://fiberbit.com.tw/tcpip-model-vs-osi-model/ Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Ana Konsept I Fast packet designing I Default values that work I Unlimited combinations I Probe once, interpret many I Interactive packet and result manipulation Dr. Ferhat Ozg¨ ¨urC¸atak [email protected] Sızma Testleri ˙Ic¸in Python Python Python for Pentsters Scapy Ag˘ Tarama ve Saldırı DDoS DDoS Saldırı Kategorileri BotNets DDoS Saldırıları Fast packet designingI I Her bir paket katmanlara ozel¨ olus¸turulmaktadır.