HEKLANJE

6 savjeta za zaštitu vaše web stranice

TEMU APP 100 E KUPON

Većina ljudi na internetu su dobri, pošteni ljudi. Međutim, postoje neki ljudi koji pretražuju internet i koji se zabavljaju pretražujući web stranice i pronalazeći sigurnosne rupe. Nekoliko jednostavnih savjeta može vam pomoći da osigurate svoju web stranicu na osnovne načine. Očito je da je tema sigurnosti podataka komplicirana i daleko izvan dosega ove kolumne. Međutim, pozabavit ću se samim osnovama koje bi čovjek trebao činiti, a koje će ublažiti mnoge potencijalne probleme koji bi ljudima mogli omogućiti da vide stvari koje ne bi smjeli.

Imenici koji štite lozinkom



Ako imate imenik na svom poslužitelju koji bi trebao ostati privatan, nemojte se oslanjati na ljude da ne pogode naziv imenika. Bolje je zaštititi mapu lozinkom na razini poslužitelja. Više od 50% web stranica pokreće Apache poslužitelj, pa pogledajmo kako lozinkom zaštititi imenik na Apacheu.

Apache preuzima konfiguracijske naredbe preko datoteke pod nazivom .htaccess koja se nalazi u direktoriju. Naredbe u .htaccessu imaju učinak na tu mapu i bilo koju podmapu, osim ako određena podmapa unutar sebe ima vlastitu .htaccess datoteku. Za zaštitu mape lozinkom, Apache također koristi datoteku pod nazivom .htpasswd. Ova datoteka sadrži imena i lozinke korisnika kojima je dopušten pristup. Lozinka je šifrirana, tako da morate koristiti program htpasswd za izradu lozinki. Da biste mu pristupili, idite na naredbeni redak vašeg poslužitelja i upišite htpasswd. Ako primite pogrešku “naredba nije pronađena”, trebate kontaktirati svog administratora sustava. Također, imajte na umu da mnogi web domaćini nude načine za osiguranje imenika koji se temelje na webu, pa vam mogu postaviti stvari da to učinite na taj način, a ne sami. Ako izuzmemo ovo, nastavimo.

Upišite “htpasswd -c .htpasswd myusername” gdje je “myusername” korisničko ime koje želite. Zatim ćete biti upitani za lozinku. Potvrdite i datoteka će biti kreirana. To možete još jednom provjeriti putem FTP-a. Također, ako se datoteka nalazi u vašoj web mapi, trebali biste je premjestiti tako da ne bude dostupna javnosti. Sada otvorite ili izradite svoju .htaccess datoteku. Unutra uključite sljedeće:

AuthUserFile /home/www/passwd/.htpasswd
AuthGroupFile /dev/null
AuthName “Sigurna mapa”
AuthType Basic

zahtijeva valjanog korisnika

U prvom retku prilagodite put direktorija gdje god se nalazi vaša .htpasswd datoteka. Nakon što je ovo postavljeno, dobit ćete skočni dijaloški okvir kada posjetite tu mapu na svojoj web stranici. Za pregled ćete se morati prijaviti.

Isključite popis imenika



Prema zadanim postavkama, bilo koji direktorij na vašoj web stranici koji nema prepoznatu datoteku početne stranice (index.htm, index.php, default.htm, itd.) umjesto toga će prikazati popis svih datoteka u toj mapi. Možda ne želite da ljudi vide sve što imate tamo. Najjednostavniji način da se zaštitite od toga je jednostavno stvoriti praznu datoteku, nazvati je index.htm i zatim je učitati u tu mapu. Vaša druga opcija je da ponovno koristite .htaccess datoteku za onemogućavanje popisa direktorija. Da biste to učinili, samo uključite redak “Opcije – Indeksi” u datoteku. Sada će korisnici umjesto popisa datoteka dobiti pogrešku 403.

Ukloni instalacijske datoteke

Ako instalirate softver i skripte na svoje web mjesto, često dolaze sa skriptama za instalaciju i/ili nadogradnju. Ostavljanje ovih na vašem poslužitelju otvara veliki sigurnosni problem jer ako je netko drugi upoznat s tim softverom, može pronaći i pokrenuti vaše skripte za instalaciju/nadogradnju i tako resetirati cijelu vašu bazu podataka, konfiguracijske datoteke itd. Dobro napisan softverski paket će vas upozoriti morate ukloniti te stavke prije nego što vam dopuste korištenje softvera. Međutim, provjerite je li to učinjeno. Samo izbrišite datoteke sa svog poslužitelja.



Budite u tijeku sa sigurnosnim ažuriranjima

Oni koji pokreću softverske pakete na svojim web stranicama moraju biti u tijeku s ažuriranjima i sigurnosnim upozorenjima koja se odnose na taj softver. Ako to ne učinite, možete biti širom otvoreni za hakere. Zapravo, mnogo puta se otkrije i prijavi očita sigurnosna rupa i postoji kašnjenje prije nego što kreator softvera može izdati zakrpu za nju. Svatko tko je tako sklon može pronaći vaše web mjesto na kojem se nalazi softver i iskoristiti ranjivost ako ne izvršite nadogradnju. I sam sam se nekoliko puta opekao zbog toga, cijeli forumi su uništeni i morao sam se vraćati iz sigurnosne kopije. Događa se.

Smanjite razinu prijavljivanja pogrešaka



Ovdje uglavnom govorim o PHP-u jer to je ono na čemu ja radim, pogreške i upozorenja koje generira PHP se prema zadanim postavkama ispisuju s potpunim informacijama u vašem pregledniku. Problem je u tome što te pogreške obično sadrže pune staze direktorija do skripti o kojima je riječ. Odaje previše informacija. Da biste to ublažili, smanjite razinu izvješćivanja o pogreškama PHP-a. To možete učiniti na dva načina. Jedan je prilagoditi svoju php.ini datoteku. Ovo je glavna konfiguracija za PHP na vašem poslužitelju. Potražite direktive error_reporting i display_errors. Međutim, ako nemate pristup ovoj datoteci (mnogi na dijeljenom hostingu nemaju), također možete smanjiti razinu prijavljivanja pogrešaka pomoću funkcije error_reporting() PHP-a. Uključite ovo u globalnu datoteku svojih skripti tako da će funkcionirati u cijelosti.

Osigurajte svoje obrasce

Obrasci otvaraju veliku rupu u vašem poslužitelju za hakere ako ih pravilno ne kodirate. Budući da se ti obrasci obično podnose nekoj skripti na vašem poslužitelju, ponekad s pristupom vašoj bazi podataka, obrazac koji ne pruža neku zaštitu može hakeru ponuditi izravan pristup svim vrstama stvari. Imajte na umu… samo zato što imate polje za adresu i piše “Adresa” ispred njega ne znači da možete vjerovati ljudima da će unijeti svoju adresu u to polje. Zamislite da vaš obrazac nije ispravno kodiran, a nije ni skripta kojoj se šalje. Što može spriječiti hakera da unese SQL upit ili kod za skriptiranje u to adresno polje? Imajući to na umu, evo nekoliko stvari koje treba učiniti i pripaziti:

Koristite MaxLength. Polja za unos u obrascu mogu koristiti atribut maxlength u HTML-u za ograničavanje duljine unosa na obrascima. Koristite ovo kako biste spriječili ljude da unose JAKO previše podataka. Ovo će zaustaviti većinu ljudi. Haker ga može zaobići, tako da se morate zaštititi od prekoračenja informacija i na razini skripte.

Sakrij e-poštu Ako koristite skriptu za slanje obrasca u e-poštu, nemojte uključivati adresu e-pošte u sam obrazac. To poništava bit i spam pauci i dalje mogu pronaći vašu adresu e-pošte.

Koristite provjeru valjanosti obrasca. Ovdje neću ulaziti u lekciju o programiranju, ali svaka skripta kojoj se obrazac predaje treba potvrditi primljeni unos. Provjerite jesu li primljena polja očekivana. Provjerite jesu li dolazni podaci razumne i očekivane duljine i ispravnog formata (u slučaju e-pošte, telefona, zipova itd.).

Izbjegavajte SQL Injection. Potpuna lekcija o SQL ubacivanju može se rezervirati za drugi članak, no osnova je da je unos obrasca dopušteno umetnuti izravno u SQL upit bez provjere valjanosti i time hakeru dati mogućnost izvršavanja SQL upita putem vašeg web obrasca. Da biste to izbjegli, uvijek provjerite vrstu podataka dolaznih podataka (brojevi, nizovi, itd.), pokrenite odgovarajuću provjeru valjanosti obrasca prema gore i pišite upite na takav način da haker ne može umetnuti ništa u obrazac što bi učinilo upit nešto drugo nego što namjeravate.

Zaključak

Sigurnost web stranica prilično je složena tema i postaje PUNO tehničkija od ovoga. Međutim, dao sam vam osnovne upute o nekim lakšim stvarima koje možete učiniti na svojoj web stranici kako biste ublažili većinu prijetnji svojoj web stranici.

Korporacija

Korporacija istražuje prirodu i spektakularan rast dominantne institucije našeg vremena. Snimke pop kulture, oglašavanja, TV vijesti, i korporativne propagande. Corporation