Kategorier
Linux

Ny version av Kali Linux: 2019.3

Det har nu släppts en ny version av Kali Linux. Denna version går under benämningen 2019.3 och är en del av det nya rullande-släppen av Kali som infördes 2016.

Nyheter i denna version är bland annat följande:

  • En version till LXC så du kan köra Kali i en container
  • Kernel uppdaterad till 5.2.9
  • Buggfixar och uppdateringar till ARM samt Raspberry Pi
  • Flertalet helperfunktioner som gör det lättare att komma åt verktyg och navigera
  • Samt nya och uppdaterade paket såsom Burp Suite, hyperion, amass, kismet, nmap och HostAPd-WPE

Här är ett exempel på ett helperscript som aktiveras när jag skriver mimikatz:

mimikatz kali linux

Jag passar även på att tipsa om boken Kali Linux Revealed som kan ladda hem gratis.

Kategorier
Nyheter

Nmap 7.80 Defcon-edition

FyodorFyodor meddelade precis att Nmap version 7.80 släppts under hacker-konferensen Defcon som går av stapeln i Las Vegas.

Anledningen till varför det är över ett år sedan senaste versionen av Nmap släpptes uppges att vara utvecklingen av Npcap. Tidigare så var Nmap och andra mjukvaror såsom Wireshark beroende av Winpcap som slutades att underhållas runt 2013.

Denna nya Nmap-version innehåller även 11 st nya NSE-script som bl.a. inkluderar dessa:

  • broadcast-hid-discoveryd
  • broadcast-jenkins-discover
  • http-sap-netweaver-leak
  • smb-vuln-webexec

Övriga höjdpunkter från nya versionen är följande:

  • rdp-enum-encryption kan nu kontrollera TLS-versioner
  • Ny rand.lua för bättre slumptal
  • Nsock och Ncat stödjer nu AF_VSOCK
  • Stödet för -PR (ARP ping) är nu borttaget

Nmap 7.80 kan laddas hem här: https://nmap.org/download.html och hela listan med ändringar hittar du här:

Kategorier
Verktyg

Automated Penetration Testing Toolkit (APT2)

APT2 är ett verktyg för att automatiskt genomföra flertalet annars manuellt moment vid ett penetrationstest. Det är skrivet i python av två medarbetare vid företaget Rapid7 (som även utvecklar Metasploit).

Metodiken vid ett penetrationstest ser ungefär ut som liknande:

Och ser man på ovan linje så är inte så mycket automatiserat i dagsläget. Metasploit Pro, Core Impact och Immunity CANVAS är kommersiella verktyg och har många av dessa steg inbyggda.

Ett exempel på ett förfarande som APT2 kan automatisera åt dig:

  • Identifiera öppna portar med Nmap
  • Identifiera FTP och utför bruteforce
  • Identifiera webbservrar och testa efter OWASP Top 10 osv
  • Köra Responder.py identifiera nätverksutdelningar
  • Köra Metasploit mot tjänster

Verktyget går att ladda hem via GitHub här: https://github.com/MooseDojo/apt2

Test av APT2

Först installerar vi alla beroenden med hjälp av pip enligt README-filen. Efter detta så startar jag metasploit och kör kommandot som apt2.py skriver ut för att starta API:t (apt2 pratar med msf).

När det är klart så kör jag nmap och skapar en xml-fil som sedan kan skickas in som argument till apt2. För att få Nmap att skriva ut en XML-fil med resultatet skriver du med -oX argumentet, likt följande:

nmap -oX internal-scan.xml 10.0.1.2

Och denna fil använder vi sedan till apt2.py:

./apt2.py -v -v -b -s 1 -f internal-scan.xml

Och om allt går väl så skrivs det ut en rapport i html-format. Jag är tyvärr inte helt imponerad av rapporten som skapades mot det system som jag testade, nämligen metasploitable3. Resultatet var att apt2 inte lyckades utnyttja något:

Så min rekommendation just nu är att skippa APT2. Det tillför inget även om det är en bra grundidé men har potential att bli något bra.

Kategorier
Linux

Kali Linux 2016.2

Kali Linux

Nu har en ny version av Kali Linux släppts. Denna nya version heter 2016.2 och är en ny grundinstallation i det nya release-systemet som går under namnet ”rolling”. Det betyder att det kommer färre nya versioner och pakethanteraren APT används istället för att hålla Kali uppdaterat.

Nytt i denna version är att du kan välja fönsterhanterare direkt vid nedladdning av ISO. Du kan välja mellan KDE, MATE, LXDE, e17, och Xfce.

Detta är så klart väldigt trevligt för oss som inte gillar Gnome.

Och så klart är även en mängd olika verktyg uppgraderade samt tillagda, och för att lista några stycken:

  • Lynis
  • wifiPhisher
  • snmpcheck
  • fruitywifi
  • Nmap
  • CeWL
  • Bettercap
  • GoBuster
  • whatweb
  • routersploit
  • xsser

För att se samtliga så finns det en changelog och här kan du ladda hem ISO direkt eller Torrent:

kali-rolling-2016-2-release3

Kategorier
Metodik

Så penetrationstestar du Internet of Things

IoT penetrationstest

Vid penetrationstest av IoT (Internet of Things) så kan det skilja sig otroligt mycket beroende vilken typ av enhet det är. Men generellt kan man skriva att skapa ett attack-träd kan vara en bra idé för att se vad det finns för olika angreppsvinklar.

Det gäller även lägga mycket tid på att läsa dokumentation och förstå sig på systemet och vilka ytor som kan vara öppna för attack, såväl klient som server-attacker. Glöm inte heller man-i-mitten attacker mot svaga eller obefintliga krypton.

En annan bra inväg kan vara att analysera firmware-avbilden och då finns det verktyg såsom IDA Pro eller VirusTotal. Och finns inte firmware tillgänglig via CD-skiva eller från leverantörens hemsida så kan löstagbart media försöka att identifieras och kopieras. Eller så får du gå direkt mot hårdvara om JTAG finnes tillgängligt.

Och när du väl fått tag på en firmware så rekommenderas även binwalk som kan analysera och extrahera ut filer.

Som vanligt när det gäller säkerhet så kan vi lära oss av historien, för misstag som uppdagats tidigare i andra mjukvaror eller enheter kommer troligtvis att hittas igen.

Behöver ditt företag hjälp med säkerheten i IoT? Kontakta Triop AB >

Checklista vid säkerhetsgranskning av IoT

  • Kör Nmap, OpenVAS eller Nessus för att få en överblick
  • Analysera firmware efter bakdörrar såsom sökvägar på inbyggd webbserver, logiska missar eller standardlösenord (se bild nedan)
  • Hur kommunicerar enheten, är det möjligt för klient eller server-side attacker? injicera innehåll i betrodda kanaler?
  • Finns det något sätt att unika identifiera dessa enheter på Internet med hjälp av Censys eller Shodan?
  • Forcera mappstrukturen, filer och lösenord på tillgängliga tjänster.
  • Hur läses konfigurationsfiler in eller firmware-uppdateringar?
  • Gränssnitt såsom WiFi, bluetooth eller liknande som kan användas.
  • Avslöjar html-källkoden eller någon typ av headers information om underliggande mjukvara.
  • Följer det med någon mjukvara? Analysera hur den kommunicerar med enheten.
  • Finns det någon lista med licenser såsom denna som kan avslöja vilka mjukvaror som används.
  • Om du passivt lyssnar på nätverkstrafiken under ett dygn från enheten. Avslöjar det något av intresse?
  • Loggfiler eller debug-inställningar som kan ge information.

Attackträd

Här är ett exempel på ett attack-träd för Linux:

Linux Attack Tree

Källa

Vidare läsning

OWASP har som vanligt en uppsjö med bra dokumentation: owasp.org/index.php/OWASP_Internet_of_Things_Project

internet-of-things

Standardlösenord

Följande bild är från CSO Online och visar på de standardlösenord som Mirai-botnätet använde. Och bör vara ett minimum gällande de lösenord och användarnamn som du testar.

iot-standardlosenord

Kategorier
Verktyg

Hitta webb-sårbarheter med Nikto

niktoOkej, du har genomfört din kartläggning med hjälp av DNS och andra verktyg och nu är det dags att börja testa webbsidor efter sårbarheter. Förutom sqlmap, Nmap, Nessus, OpenVAS så finns även Nikto som är ett bra verktyg (förutom att det är skrivet i perl).

Med Nikto så följer en bunt med databaser (från mappen program/databases).

  • 50 db_404_strings
  • 31 db_content_search
  • 1839 db_dictionary
  • 6285 db_drupal
  • 33 db_embedded
  • 135 db_favicon
  • 107 db_headers
  • 30 db_httpoptions
  • 33 db_multiple_index
  • 1288 db_outdated
  • 21 db_parked_strings
  • 185 db_realms
  • 279 db_server_msgs
  • 316 db_subdomains
  • 7000 db_tests
  • 49 db_variables
  • 17681 totala tester

Och tittar vi i den största databasen som innehåller 7000 tester så hittar vi ett regelverk som är likt denna rad:

"000001","0","b","/TiVoConnect?Command=QueryServer","GET","Calypso Server","","","","","The Tivo Calypso server is running. This page will display the version and platform it is running on. Other URLs may allow download of media.","",""

Och kör vi bara nikto -h så ser vi hjälpsidan:

Option host requires an argument
 -config+ Use this config file
 -Display+ Turn on/off display outputs
 -dbcheck check database and other key files for syntax errors
 -Format+ save file (-o) format
 -Help Extended help information
 -host+ target host
 -id+ Host authentication to use, format is id:pass or id:pass:realm
 -list-plugins List all available plugins
 -output+ Write output to this file
 -nossl Disables using SSL
 -no404 Disables 404 checks
 -Plugins+ List of plugins to run (default: ALL)
 -port+ Port to use (default 80)
 -root+ Prepend root value to all requests, format is /directory
 -ssl Force ssl mode on port
 -Tuning+ Scan tuning
 -timeout+ Timeout for requests (default 10 seconds)
 -update Update databases and plugins from CIRT.net
 -Version Print plugin and database versions
 -vhost+ Virtual host (for Host header)
 + requires a value

Note: This is the short help output. Use -H for full help text.

Toppen, vill du ha mer information kör nikto -H. Observera att Nikto inte är direkt diskret och avslöjar direkt via exempelvis User-Agent http-headers att det är just Nikto som används.

Då är det dags att genomföra det första testet:

$ perl nikto.pl -ssl -h https.se
- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP: 188.226.153.24
+ Target Hostname: https.se
+ Target Port: 443
---------------------------------------------------------------------------
+ SSL Info: Subject: /OU=GT02049958/OU=See www.rapidssl.com/resources/cps (c)15/OU=Domain Control Validated - RapidSSL(R)/CN=https.se
 Altnames: https.se
 Ciphers: DHE-RSA-AES128-SHA
 Issuer: /C=US/O=GeoTrust Inc./CN=RapidSSL SHA256 CA - G3
+ Start Time: 2015-10-26 21:22:41 (GMT1)
---------------------------------------------------------------------------
+ Server: nginx
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ Server leaks inodes via ETags, header found with file /crossdomain.xml, fields: 0x511ea08e 0x110
+ /crossdomain.xml contains a full wildcard entry. See http://jeremiahgrossman.blogspot.com/2008/05/crossdomainxml-invites-cross-site.html
+ The Content-Encoding header is set to "deflate" this may mean that the server is vulnerable to the BREACH attack.
+ OSVDB-3092: /test.html: This might be interesting...
+ OSVDB-3092: /test/: This might be interesting...
+ 7544 requests: 6 error(s) and 8 item(s) reported on remote host
+ End Time: 2015-10-26 21:49:51 (GMT1) (1630 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested

Nikto kan även spara ner rapporter i format såsom XML, HTML, NBE eller CSV. Vill du ändra User-agents så kan du göra det i nikto.conf-filen som bl.a. innehåller denna rad:

USERAGENT=Mozilla/5.00 (Nikto/@VERSION) (Evasions:@EVASIONS) (Test:@TESTID)

Verktyget följer så klart med Kali Linux eller så kan du ladda hem det från Github här.

Kategorier
Metodik

Kartläggning med hjälp av DNS

Som en del i ett penetrationstest så är kartläggning av DNS en viktig del. Det kan göras på flera sätt och oftast är en kombination av flertalet olika tester det bästa.

Flertalet verktyg stödjer kartläggning med DNS och här är några som vi rekommenderar:

Informationen från DNS-kartläggningen bildar den eller de personer som utför ett penetrationstest ett bra underlag att jobba vidare från. Även kan läckage av intern information förekomma.

dnsrecon

Vi börjar med en skärmdump från dnrecon där vi använder data från webbens 1 miljon största webbsajter. Kommandot vi kör är:

time python dnsrecon.py -d triop.se -D subdomains-top1.mil.txt -t brt

dns kartläggning med dnsrecon

Som vi kan se hittar detta kommando information om 25 stycken enheter.

theHarvester

Ett trevligt multiverktyg som inte bara hittar DNS-namn utan även E-postadresser.

theHarvester

Vi kör kommandot:

theharvester -b all -d triop.se -v -c

Och får då upp en mängd information. Det vi just nu är intresserad av eventuella underdomäner vilket den är kompetent och hittar med hjälp av sökmotorer:

DNS harvester

Nmap

Här använder vi Nmaps stöd för scripts. Och ett specifikt script som heter dns-brute.nse och med hjälp av följande kommando:

nmap -p 80 --script dns-brute.nse triop.se

Och det resulterar i ett antal underdomäner:

Nmap DNS brute

dnsdumpster.com

Detta är en publik tjänst som använder data från scans.io, se även censys.io som tillhandahåller ungefär samma söktjänst.

Med hjälp av denna data så kan vi också identifiera ett antal underdomäner:

dnsdumpster

Kategorier
Metodik

Pivotering med Metasploit

Att pivotera är främst ett engelskt begrepp och kan beskrivas som att ta sig vidare in i ett komprometterat nätverk eller system. Näthoppande eller språngbräda är två bra beskrivande ord på svenska.

Ett bra exempel för att beskriva pivotering kan vara att du genomfört ett penetrationstest och fått kontroll över en server som är ansluten mot Internet. Du vill sedan söka dig vidare mot det interna nätverket från just den servern som troligtvis har mer behörigheter. Du kan givetvis ladda upp en arsenal av verktyg till den servern som du har kontroll över men det lämnar givetvis spår och ökar chansen att bli upptäckt.

I detta exempel så är 192.168.78.25 en server som ej får ansluta till internet och kan ej nås från internet. Den servern som har IP-adress 192.168.78.5 har vi kontroll över via en exploit i Metasploit och vi har sedan upprättat ett reverse-shell över https port 443:

metasploit_pivot

Metasploit har minst två funktioner för att åstadkomma pivotering, och det är följande två moduler:

  • socks proxy
  • port forwarding

SOCKS4 är en typ av protokoll för applikationer som har funnits i många år och stöds av verktyg såsom Nmap. Skulle verktyget inte stödja socks-proxy så kan du alltid använda verktyget proxychains som ser till att din kommunikation går via proxyn.

När det gäller port forwarding så kan du lägga upp så att enskilda portar skickas vidare internt mot nätverket. Ingen av ovan två lösningar är speciellt smidig och du kan få stora problem med exempelvis timeouts.

Portforwarding i metasploit

För att använda port-forwarding kan du skriva följande kommando från Meterpreter:

meterpreter> portfwd add -L 127.0.0.1 -l 3389 -p 3389 -r 192.168.78.25

Socks4 proxy i metasploit

För att använda socks-modulen skriv följande när du har en öppen meterpreter-session med nummer 1:

route add 192.168.78.0 255.255.255.0 1
use auxiliary/server/socks4a
set SRVHOST 127.0.0.1
set SRVPORT 1080
run

Sedan kan du använda dig av ProxyChains på följande sätt från ditt lokala kommandoskal om du vill köra remote desktop (RDP) mot ett internt IP-nummer:

$ proxychains rdesktop -u admin -p Lösenord 192.168.78.25

Observera att du kan behöva att ändra portnummer och timeout-värden i /etc/proxychains.conf.

Det går även att köra Nessus via SOCKS4 samt så kan du använda dig av viss rekognosering som finns inbyggd i Metasploit såsom auxiliary portscan-modulen:

auxiliary/scanner/portscan/tcp
Kategorier
Verktyg

Nmap 6.49BETA1

Nmap

Nyligen så släpptes en ny beta-version av multiverktyget och portscannern Nmap. Denna beta innehåller 281 st nya IPv4 fingerprints. Även över 2500 nya service fingerprints finns med i denna realease.

Mängder med nya nse-script för att bl.a. identifiera sårbara ElasticSearch installationer. Totalt finns det nu 494 st script.

En hel del SCADA/ICS script också för att hämta enhetsinformation via EtherNet/IP (enip-info) och scriptet omron-info som hämtar information från Omron PLCer via FINS tjänsten.

Scriptet docker-version identifierar installationer av Docker samt visar versionsinformation.

Här kan du hämta senaste beta-versionen:

Kategorier
Metodik

Kali Linux 1.1.0

Kali Linux 1.1.0 har ännu inte släpps men innehåller en mängd nya verktyg och uppgraderingar, några kan du hitta här:

Uppgradering av oclHashcat till v. 1.20
Uppgradering av Wapiti
Uppgraderat golismero till 2.0 (beta X)
Fix i WPScan så att –update körs
Uppgraderat theHarvester till version 2.5
Hashcat fungerar igen
Sleuth Kit 4.0.2
Keyboard layout gick ej att ändra
Cree.py fungerade ej
Uppgradera sslyze till 0.8.
Uppgradera Aircrack-ng till 1.2 RC 1
Nytt verktyg: backdoor-framework proxy
Uppgradera mitmf till 0.11
Uppgradera backdoor-factory till 2.3.6
Uppgradera Armitage
HackRF uppgraderat
SSLyze uppgraderat
OpenVAS 7 är släppt och inkluderat
DNSChef uppdaterat
responder.py fixat och uppgraderat
hashID uppgraderat till 2.9.0
recon-ng uppgraderat
IT-Forensiska verktyget volatility 2.4 uppgraderat
Proxychains segfaultar med nmap, fixat
mfcuk hittar ej rätt nycklar, fixat