Tuntimuistiinpanot, vierailijaluento
Vierailija Mika Rautio Poplatekiltä, työnä koodia ja tietoturvaa ja juristiikkaa. Alla vahvasti jälkikäteen editoidut muistiinpanot omien lisäysten ja linkitysten kera.
- Mikäli maksat korteilla, todennäköisesti kulkenut Poplatekin kautta liikenne
- Mika opiskelee HH:ssa liiketaloutta töiden ohessa
- Luennon fokus: miten organisaatioissa tehdään pentestiä, yritysnäkökulma
Mikä yleisin tapa murtautua järjestelmiin?
- Verizon Data Breach Investigation raportti vuosittain
- Social engineering (kattotermi) ja erityisesti phishing
- Spear phishing (kohdennettu kalastelu)
- Whaling (tärkeimmät organisaatioiden/alan hlöt)
- Smishing (sms)
- Vishing (voice)
- Email phishing
- SE phishing / SEO poisoning/trojans (osumissa ykkösenä hyökkääjän sivu)
- Angler phishing (some)
- Stolen poor credentials (<– Näitä on murrettu jo kolmella ohjelmalla kurssilla, JtR, Medusa ja Ffuf)
- Systems are not up-to-date
- Systems are accessible from the Internet (<– Tiedustelussa huomattiin tämän oleellisuus miten paljon turhia palveluja ja portteja auki teoriassa ja käytännössä koneissa)
- Social engineering (kattotermi) ja erityisesti phishing
Miksi testataan?
- Toki turvallisuuden parantaminen,
- …mutta monesti liiketoimintaluvan menettäminen jos ei harjoita esim. kerran vuodessa (alakohtaista)
Payment Card Industry Data Security Standard
- Kaikki yritykset ja järjestelmät jotka käsittelee, välittää tai tallentaa korttidataa joutuu noudattaa PCI DSS
- Pitää olla metodologia pentestingiin 11.3
- Mitä pitää tehdä
- External pentest vähintään vuosittain 11.3.1
- Yritys päästä tuotantojärjestelmiin
- Internal pentest vähintään vuossitain 11.3.2
- Tehdään yleensä vain testijärjestelmien puolella
- Yleensä ei sisäverkkopääsyä tuotantojärjestelmiin
- Löydettyjen haavoittuvuuksien korjaaminen ja uusi testaus korjausten varmistamiseksi 11.3.3
- 11.3.4 vuosittainen testaus segmentaatio metodien toimivuuden varmistaminen
- Segmentaatio, esim. palomuuri järjestelmien välissä, järjestelmien jakaminen osiin
- Sekä internal että external liittyy mutta tässä alakohdassa se sanotaan suoraan
- External pentest vähintään vuosittain 11.3.1
Pentest prosessi
- Vaatimukset
- Mitkä järjestelmät testataan?
- Yleensä kriittisimmät
- Esim. julkinen verkkosivu missä vain julkista dataa ei kovin kriittinen
- Mutta yrityksen tietokanta missä potilasdataa hyvin kriittinen
- Kuka tekee pentestingin?
- Laajuus ja aikataulu
- Laajuuden suhteen kannattaa olla kriittinen, varmistaminen onko testin tilaajalla lupaa järjestelmiin (muista tarkastaa ip-ranget ja kysyä tarvittaessa kenelle ne todella kuuluvat, esim. jos järjestelmät pilvessä)
- Pilvipalvelut saattavat reagoida pentestaukseen sulkemalla palvelut jos hommaa ei tee pilvipalvelun ohjeiden mukaisesti
- Löydösten jälkeen kriittisten haavoittuvuuksien korjaaminen ja uusi testaus
- Joskus korjaukset eivät mene oikein tai ole riittäviä
- Monia löydöksiä ei tarvitse korjata ja uudelleentestata esim. hieman väärin konffattu palvelu
- Testiraporttien tekeminen tilaajalle
- Mitä tehtiin, kuinka tehtiin, milloin tehtiin, mitkä olivat löydökset?
Miksi inhouse pentestingiä?
- Aika, joskus ei ole aikaa odottaa 2kk
- Paljon järjestelmiä, pakko tehdä omaa pentestausta
- AWS esim. korjasi yli 8kb http request bodyt koska sen ylittäviä http-pyyntöjä ei tarkastettu
- AWS:llä on omat pentest ohjeet jotka kertovat mitä ja miten saa tehdä tunkeutumistestausta.
- Varmista tarvittaessa epäselvissä tilanteissa palveluntarjoajalta ja tallenna vastaukset, jos ASPAsta tulee lupa se on aina turvallisempaa jatkoseurauksia silmälläpitäen.
- AWS:llä on omat pentest ohjeet jotka kertovat mitä ja miten saa tehdä tunkeutumistestausta.
- Enemmän aikaa testata
- Ketterämpää
- Organisaatiospesifit vaatimukset, henkilöt voivat erikoistua ja saada paremman kokonaiskuvan ja erikoistua
- Silti kannattaa käyttää useita testaajia ja ulkopuolisia testaajia, jokaisella testaajalla omat sokeat pisteensä
Mitä pentestaajalta odotetaan?
- Oppimishalu
- Uudet järjestelmät, vieraat ympäristöt
- Sertifikointi
- Todistetut taidot
- Opiskeluympäristöt
- Hack the box (oppii oikeasti murtautumaan)
- Bug bounties (vaatii erittäin kovaa ammattitaitoa ja aikaa, ei aloittelijalle suositeltava)
- Aina scope ja rajoituksia esim. automatisoitujen työkalujen käytössä
- Hackerone
- Intigriti
- Suomessa Tilastokeskuksella bug bounteja (ei löydy nopeasti googlettamalla enempää tietoa asiasta ikävä kyllä)
- Bug bountyssa olevat koneet kovennettuja moniin normaaleihin palveluihin verrattuna
- Keskity yhteen palveluun ja organisaatioon jos päädyt tekemään bb
- Opettavainen kokemus kuitenkin
- Raportoidut haavoittuvuudet
- Työkokemus
- Opiskeluympäristöt
- Pentesterit käyvät mm. läpi konffitiedostoja luvan kanssa (white box testing vs. normaali musta laatikko testaus)
- Valtava arsenaali työkaluja valmiina, ohjelmointi ei ole välttämätöntä pentestaajalle
- Sen sijaan verkkoprotokollat ja niiden ymmärtäminen oleellista
- HelSec tapahtumat alan tekijöille
- Disobey tapahtuma helmikuussa
## Suositut työkalut
- Nmap verkkoskannaukseen
- Wireshark - Kaappaa ja analysoi verkkoliikennettä
- Metasploit - All-in-one pentest framework
- Burp Suite - Verkkoapplikaatio pentest framework
- OWASP ZAP ilmaisversio korvike Burp Suitelle
“Tärkein” työkalu
- https://www.ssllabs.com/ssltest
- Aina voi antaa kommentteja kryptografisista protokollista
- Kukaan ei niitä kuitenkaan koskaan korjaa ja raportit menevät roskikseen :-)
- Ellei mukaan liitä demoa :-)
- Jokainen valtio voi korkata TLS yhteyden
- Mutta valtiollisilta hyökkäyksiltä voi suojautua pinnaamalla TLS-sertifikaatin palveluun rajoittamalla CA truth storea
- Samaa tekniikkaa voi käyttää myös muissa palveluissa
- Isot tekijät käyttävät CA palvelujen korkkaamista hyökkäyksissä
## Mitä pentestaajat ovat löytäneet?
- Tyypillisiä haavoittuvuuksia OWASP TOP 10 listalta
- Mutta hyökkäyksen jatkaminen voi silti olla hankalaa kun järjestelmät kovennettuja
- Katso myös yleisimpien haavoittuvuuksien ulkopuolelta
- Jos haavoittuvuuksia ei löydy voi pyytää palomuurisääntöjen keventämistä tms.
- Oma palomuurisääntö jokaisella mikropalvelulla auttaa segmentoimaan ja koventamaan järjestelmää
- Yrityksen sisäverkkoa pidetään yhtä turvallisena kuin Internettiä
- Herrasmieshakkereilla aiheesta jakso “Muurien jälkeinen aika”
- Yrityksen sisäverkkoa pidetään yhtä turvallisena kuin Internettiä
Q&A
- Pahamaineinen suomalainen FIN7
- Rikolliset palkkasivat tietoturva-alan tekijöitä työntekijöiden ymmärtämättä kenelle oikeasti työskentelivät
- Tarkasta aina organisaatiot minne haet
- AWS IDS GuardDuty
- SIEM(Security Information and Event Management) ja EDR (Endpoint Detection and Response) ovat SOC(Security Operations Center) ratkaisuja
- Security operations (käytännössä käydään läpi iso kasa logeja ja yritetään löytää ongelmia)
- Entry level hommaa alalle monesti
- SIEM ja EDR työkaluja mitä näissä hommissa käytetään, uhkadataa analysoidaan
- Pluk (??? tästä en löytänyt googlettamalla enempää tietoa soc + pluc, plug, pluk, pluck, bluc, blug, bluk, bluck)
- Grey log
- ELK
- HelSec
- Hinta pentestille
- n. 1k päivä
- Pikku järjestelmä ehkä alle 10k
- Iso yli 10k
- FireEye vuoto
Tuntiopetus vierailun jälkeen: OWASP ZAP
- Hakupyyntöjen käsittely oleellinen ominaisuus
- Oikealla näppäimellä saa auki hakupyyntöjen manipuloinnin
- Kun käynnistyy, avaa proxyn
- FoxyProxyyn voi tehdä patternin, ja jos tekee pentestiä nettiin kannattaa se sinne asettaa.
- HTTPS salaa kuitenkin liikenteen
- Tools -> Options -> Dynamic SSL Certificate -> Save ->
- FF: about:prefences -> Certificates -> View Certificates -> Import -> Trust for websites
- Asetukset FF:llä tai FoxyProxyllä
- Testaa poistamalla SSL luotetuista ja lataa sivu uudestaan https-sivu
- mitmproxy (palvelu mutta myös kategoria) vaihtoehto ZAP:lle
- Alerts välilehdellä näkyy vinkkejä haavoittuvuuksista
- CRFS protection selaimissa päällä
- Oikealla napilla Sites-puussa ja Break.. voi kohdistaa breakpointin
Pitää saavuttaa tietoylivoima, siihen OWASP ZAP / muu proxy
- HUD sivuilla ZAPin kanssa
- Napin painalluksella piilotetut kentät ja paljon muuta
- Menee ZAP:ssa päälle Tools -> Options -> HUD -> Enable ..
- Tehdään tutoriaali
- Saa päälle ZAP Toolbarin vihreästä pylpyrästä ja samasta pois
Jatkoa varten
- Hack the box kannattaa aloittaa
Edellisten tehtävien läpikäynti
- SYN scan (ex. stealth scan) ja Connect scan ihan yhtä jäljitettäviä
- SYN scan on nykyisin melkein hälyttävämpi
- SYN = synchronize (Heippa, haluan jutella)
- RST = Reset, tyly tapa katkaista
- FIN = normaali tapa katkaista
HackTheBox
- Aloitetaan Hack the Box
- Hack the boxin oma tutoriaali lab accessiin: https://help.hackthebox.com/en/articles/5185687-gs-introduction-to-lab-access
- Ohjeita aloittamiseen eri OS:llä: [https://www.youtube.com/channel/UCG-48Ki-b6W_siaUkukJOSw]
- Vaatimukset:
- Hack The Box tili
- Latest version of OpenVPN
- Internetyhteys