Testa uzbrukums un Web lietojumprogrammu aizstāvēšana, izmantojot bWAPP

bWAPP ir vietne, kas ir izstrādāta ar ievainojamībām, lai gan iesācēji, gan eksperti varētu veikt pārbaudes un ētiskas uzlaušanas prakses. To var mitināt Linux vai Windows Apache vai IIS un MySQL. To atbalsta WAMP vai XAMPP. Vēl viena iespēja ir izmantot virtuālo mašīnu, kas darbojas VMware vai VirtualBox.

bWAPP ir bezmaksas un atvērts, to var lejupielādēt divās versijās: vienu izmantot lokāli, bet otru - instalēt virtuālajā mašīnā. Vietne ir izstrādāta PHP un MySQL, tāpēc tā ir starpplatformu. Mēs lejupielādējam instalēšanas bWAPP lokāli, ja mēs vēlamies instalēt virtuālajā mašīnā, projekts ir Bee-Box.

Bee-box ir Linux virtuālā mašīna ar visu iepriekš instalētu. Tādā veidā mums tikai jāizpēta visas bWAPP ievainojamības, neriskējot sabojāt bWAPP vietni. Arī ar virtuālo mašīnu mēs varam mēģināt iegūt root piekļuvi.

bWAPP ir vairāk nekā 100 kļūdu Lai izpētītu un atklātu, tas aptver visas galvenās zināmās tīmekļa ievainojamības, tostarp visus drošības riskus. Projekts ne tikai ļauj atklāt ievainojamības, bet arī ļauj atrast risinājumu.

Šajā apmācībā mēs instalēsim bWAPP Bee-Box versijuLai to izdarītu, mēs izpakojam lejupielādēto failu un izveidojam mapi ar daudziem vmdk failiem mūsu vietējā serverī. Tālāk mēs izveidosim virtuālo mašīnu, piešķirot 32 bitu Linux Ubuntu versiju.

Tālāk mums jāizvēlas lejupielādētais fails ar nosaukumu bišu kaste.vdmk

Pirms virtuālās mašīnas palaišanas atcerieties, ka mums būs jākonfigurē tīkls, mēs to darām no Iestatīšana lai iegūtu IP adresi un varētu piekļūt virtuālajai mašīnai no cita datora.

Mēs noklikšķinām uz izveidot un pēc tam uz Sākt, lai virtuālā mašīna sāktu darboties, kad tā būs ielādēta, mēs redzēsim darbvirsmu.

Tālāk mēs atvērsim termināli, lai redzētu, ko IP izmanto, izmantojot komandu ifconfig.

Mēs redzam, ka IP šajā gadījumā ir 192.168.0.14, ja pārbaudām šo IP datorā ārpus virtuālās mašīnas, mums vajadzētu būt iespējai piekļūt tīmeklim:

 http://192.168.0.14/bWAPP
Un rezultāts būs šāds:

Tad mēs varam sākt ar pieteikšanās lapu, pēc noklusējuma lietotājs ir bite un parole ir kļūda, lai piekļūtu vadības panelim. Izvēlnē Bugs mums būs vairāki piemēri, kā izmantot un pārbaudīt dažas ievainojamības, sākot no vienkāršākās līdz sarežģītākajai. Apskatīsim dažus ievainojamības atkarībā no uzbrukuma veida.

ievainojamības ir sadalītas kategorijās vai nodaļās kas ir šādas:

A1 injekcijasŠeit ir sagrupētas ievainojamības HTML injekcija, SQL, XSS, XPATH un visi tie, kas saistīti ar parametru nosūtīšanu, izmantojot pārlūkprogrammas.

A2 Pārtraukuma autentifikācija un sesijasŠeit tas izskatās pārkāpt captchas un pieteikšanās veidlapas izmantojot URL aizstāšanas paņēmienus, parametru uztveršanu un sesijas ID izmantošanu.

A3 vairāku vietņu skriptēšana (XSS)Šeit ir Ar XSS saistītas ievainojamības kas nav ļoti bīstami, bet drīzāk kaitinoši.

A4 Nedroši objekti un katalogiŠeit tas ir par mainīt parametrus saitēs no koda pirms veidlapas iesniegšanas.

A5 Drošība un konfigurācijaŠeit mēs redzēsim daži uzbrukumi, piemēram, DDOS un vidējais uzbrukums, kas centīsies ietekmēt tādus pakalpojumus kā pasts un pakalpojumi, kas darbojas.

A6 Jutīgu datu atklāšanaŠeit mēs redzēsim virkni ievainojamību, kas ļauj servera dati tiek atklāti pārlūkprogrammā.

Šīs ir dažas ievainojamības, šajā apmācībā mēs koncentrēsimies uz pazīstamākajiem uzbrukumiem un iespēju pārņemt kontroli pār serveri.

1. HTML injekcija


HTML atspoguļota injekcija ļauj ievietot HTML kodu teksta laukā un pēc tam parādīt to tīmeklī. Mēs izvēlamies pirmo metodi Injection by GET, mums ir divi tekstlodziņi, ja katrā no tiem ievadām, piemēram, saiti:
 Steidzama ziņa | Jūsu pārdošana
Nosūtot veidlapu, mēs redzēsim, ka abas saites tiek parādītas, un gaidīsim, kamēr kāds noklikšķinās. Mēs varam arī izmēģināt POST metodi.

PALIELINĀT

Vēl viena problēma, kas nekontrolē HTML datu ievadi, ir tā, ka mēs varētu nosūtīt veidlapu, liekot lietotājam uzskatīt, ka viņam jāpiesakās vai jāievada daži dati, un jānosūta šie dati uz citu lapu.

 Jūs esat atvienots. 
Lai turpinātu lietotāja darbību, ievadiet savu lietotājvārdu un paroli:
atslēga:

PALIELINĀT

2. SQL injekcija


Apskatīsim citu uzbrukumu, piemēram, SQL injekciju, ja BUG meklēsim SQL injekcijas opciju (GET / Search), šajā sadaļā mēs varam meklēt filmas, piemēram, Iron Man, kā rezultātā tiek iegūti filmas dati.

PALIELINĀT

Tad mēs varam mēģināt ievadīt SQL kodu, lai pārbaudītu, vai datu bāze ir neaizsargāta, tāpēc mēs izmantojam šādu kodu, kas atgriezīs datu bāzu sarakstu, ja:

 dzelzs vīra savienība izvēlieties 1, tabulas_nosaukums, 3,4,5,6,7 no INFORMATION_SCHEMA.TABLES kur table_schema = datu bāze () -'
Rezultāts ir tabulu saraksts, tāpēc datu bāze ir neaizsargāta:

PALIELINĀT

Zinot, ka datu bāze ir neaizsargāta, mēs varam izmantot dažus paņēmienus, ko redzējām apmācībā SQLMAP, SQL injekcijas rīks un ētiskā datubāzes uzlaušana, kur mēs sasniedzam saknes līmeni, meklējot administratora atslēgas.

Termināla logā mēs rakstām šādu komandu, mēs izmantojam lapu, kurā meklējam filmu, jo tai ir parametrs, kas var būt neaizsargāts.

 sqlmap -u "http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search" --dbs

Tas parāda mums datu bāzes, viena no tām ir bWAPP, tāpēc mēs centīsimies iegūt tabulu sarakstu, zinot, ka datu bāzes dzinējs ir MySQL 5. Lai iegūtu tabulu sarakstu, mēs izmantosim šādu komandu.

 sqlmap -u "http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search" -tabulas

Mēs redzam, ka tajā ir uzskaitītas visas tabulas ne tikai no tīmekļa, bet arī no sistēmas, tāpēc mēs varam iegūt datus no Linux administratora. Mēs varam arī izmantot PHP sesiju, izmantojot Firebug, un mēs varam redzēt sesijas numuru, jo, izveidojot lietotāju vai piesakoties vai ģenerējot kādu dinamisku saturu, piemēram, meklēšanu, servera atbilde radīs PHPSession.

PALIELINĀT

Izmantojot komandu --lietotāji un sesiju vai ar komandu bez sesijas mēs varēsim redzēt sistēmas lietotājus.

 sqlmap -u "http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search" -lietotāji
Vēl viena opciju komanda ar sesijas ID:
 sqlmap -u “http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search” --cookie = ”PHPSESSID = e6f734f935bca3bf86013add7ea2e3f9; security_level = 0” -lietotāji

Tālāk mēs meklēsim sistēmas lietotājus, izmantojot šādu komandu:

 sqlmap -u "http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search" dba --is -dba --privileges --dbs -dump 
Rezultātā mēs iegūsim tabulas, kurās ir parole, viena no tām ir lietotāji, kuriem ir administratora dati, un otra ir tabulu varoņi un lietotāji (lietotāji), kurus mēs izmantosim, lai pieteiktos kā lietotāji.

Lietotāju tabulā ir vietnes administratora dati:

Tālāk mēs iegūsim iepriekš atrasto lietotāju saknes paroli, tāpēc mēs izmantojam šādu komandu:

 sqlmap -u "http://192.168.0.14/bWAPP/sqli_1.php?title=iron&action=search" -f -b -pašreizējais lietotājs -is -dba --is -dba -privilēģijas --dbs - izgāztuve
Komandu beigās, izmantojot brutālu spēku uzbrukumu, mēs atklājam, ka sistēmas administratora parole ir kļūda un lietotājs ir root.

Mēs mēģināsim no termināļa, izmantojot ssh, izveidot savienojumu ar virtuālo mašīnu, lai attālināti vadītu datoru, izmantojot šādu komandu:

 ssh [email protected]
Rezultāts, izmantojot saknes lietotāju un kļūdas paroli, ir savienojums ar administratora atļaujām virtuālajai mašīnai.

Tālāk mēs pārbaudām, vai varam pieteikties varoņu un lietotāju sadaļā ar iepriekš iegūtajiem datiem, piemēram, neo lietotāju un trīsvienības paroli.

Mums izdevās bez problēmām piekļūt šiem lietotāja datiem. Ja mēs izmantojam lietotāju tabulu, mēs varam arī pieteikties.

3. HTML / XPATH injekcija


Viens no vismazāk domātajiem uzbrukumiem ir caur tām pārlūkprogrammām, kas atļauj koda rediģēšanu, ja mainīsim saiti uz ļaunprātīgu vietni, lietotājs to nepamanīs un izmaiņas tiks zaudētas, kad tīmeklis tiks atsvaidzināts.

Piemēram, mēs nomainīsim paroli un ar peles labo pogu noklikšķiniet, lai atvērtu inspektoru vai koda redaktoru un mainītu URL change_password.php uz http://google.com un aizvērtu redaktoru

PALIELINĀT

Tādējādi, kad lietotājs noklikšķina uz šīs saites, viņš tiks novirzīts uz citu lapu, tas ir ļoti neefektīvi, jo, atsvaidzinot vai mainot lapu, saite atgriežas sākotnējā. Tas ir jāizskata pirms noklikšķināšanas uz saites, kas mūs novirza uz drošu vietni vai tajā pašā domēnā.

4. Injekcija servera pusē


Servera puses injekcija ir tad, kad vietne ir neaizsargāta un ļauj ievadīt komandas no valodas vai operētājsistēmas, lai veiktu darbības serverī.

Uzbrucējs nosūta ļaunprātīgu kodu vai komandu, izmantojot tīmekļa servera palaistas tīmekļa lietojumprogrammas teksta lauku. Apskatīsim piemēru, kas ļaus jums uzskaitīt direktorijus, izmantojot komandu Linux ls, kuru mēs uzrakstīsim šādi:

 

PALIELINĀT

Rezultāts būs visu servera direktoriju saraksts, tāpēc mums jāpārbauda, ​​vai nevar ievadīt nevienu komandu.

PALIELINĀT

Viens no rīkiem, ko mums piedāvā bWAPP projekts, ir ZAP (Zed Attack Proxy), mēs redzējām šo rīku apmācībā Vietnes ievainojamības skenēšana ar ZAP, to plaši izmanto, lai skenētu ievainojamības un veiktu iespiešanās testus vietnēs. Mēs varam lejupielādēt jaunāko versiju no šīs saites:

LEJUPIELĀDĒT ZAP

Izvēlieties versiju atbilstoši mūsu operētājsistēmai vai daudzplatformu versiju, kas izstrādāta Java. Pēc instalēšanas mēs mēģināsim skenēt bWAPP tīmekli, izmantojot ZAP, un meklēt dažas ievainojamības.

PALIELINĀT

Kad mēs sākam ZAP un veicam skenēšanu, mēs redzēsim, ka tas atklāj lielāko daļu ievainojamību, lai definētu skenēšanas noteikumus, mēs varam doties uz izvēlni Analizēt> Skenēšanas noteikumi un tad mēs veicam dubultklikšķi uz Noklusējuma politika.

Paskatīsimies vienā no pieteikšanās lapām, kurā ir konstatēts, ka lietotāja līmenis tiek nosūtīts kā parametrs, šajā gadījumā administrators.

PALIELINĀT

Mēs varam arī izmantot filtrus, kā redzējām ZAP apmācībā, lai veiktu SQL injekcijas un citus uzbrukumus.

Tīmekļa lietojumprogrammu drošība ir ļoti svarīgs aspekts, izņemot labu dizainu un saturu. bWAPP ir platforma, kas ļaus mums uzzināt un pārbaudīt daudzas ievainojamības, pēc tam pielietot šīs zināšanas mūsu vietnē, kā arī kalpo, lai speciālisti, izstrādātāji un studenti varētu atklāt un novērst tīmekļa ievainojamības.

bWAPP plaši izmanto tīmekļa lietojumprogrammu iespiešanās testos un ētisku hakeru projektos. bWAPP aptver visas galvenās zināmās tīmekļa ievainojamības, ieskaitot visus OWASP Top 10 projekta riskus, kas katru gadu apkopo ievainojamības 10 kategorijās.

Visbeidzot, mēs iesakām šo rakstu ar paskaidrojumu kiberuzbrukumu veidi.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave