Кампутары, Бяспеку
Уразлівасці сайтаў. Праверка сайта. Праграма для сканавання сайта на ўразлівасць
Праблема бяспекі вэбсайтаў яшчэ ніколі не стаяла так востра, як у 21 стагоддзі. Вядома, гэта звязана са усёабдымнай распаўсюджваннем сеткі Інтэрнэт практычна ва ўсіх галінах і сферах. Кожны дзень хакеры і спецыялісты па бяспецы знаходзяць па некалькі новых уразлівасцяў сайтаў. Многія з іх тут жа зачыняюцца ўладальнікамі і распрацоўшчыкамі, а нейкія застаюцца як ёсць. Чым і карыстаюцца зламыснікі. А бо з дапамогай узламанага сайта можна нанесці вялікую шкоду як яго карыстальнікам, так і серверам, на якіх ён размешчаны.
Тыпы уразлівасцяў сайтаў
Пры стварэнні вэб-старонак выкарыстоўваецца шмат сумежных электронных тэхналогій. Нейкія з'яўляюцца дасканалымі і правераныя часам, а нейкія новыя і яшчэ не абкатаныя. У любым выпадку маецца маса разнавіднасцяў уразлівасцяў сайтаў:
- XSS. Кожны сайт валодае невялікімі формамі. З іх дапамогай карыстальнікі ўводзяць дадзеныя і атрымліваюць якой-небудзь вынік, праводзяць рэгістрацыі або адпраўляюць паведамленні. Падстаноўкі ў гэтыя формы спецыяльных значэнняў можна справакаваць выкананне пэўнага скрыпту, што можа выклікаць парушэнне цэласнасці сайта і компрометирование дадзеных.
- SQL-ін'екцыя. Вельмі распаўсюджаны і эфектыўны спосаб атрымаць доступ да канфідэнцыйных дадзеных. Адбывацца гэта можа альбо праз адрасную радок, альбо праз формы. Працэс праводзіцца шляхам падстаноўкі значэнняў, якія могуць не адфільтроўваць скрыптамі і выконваць запыты ў базу дадзеных. А пры належных ведах гэта можа выклікаць парушэнне бяспекі.
- HTML-памылкі. Практычна тое ж самае, што і XSS, але ўкараняецца ня скрыпт-код, а HTML.
- Ўразлівасць сайтаў, звязаная з размяшчэннем файлаў і каталогаў у месцах па змаўчанні. Напрыклад, ведаючы структуру вэб-старонак, можна дабрацца да кода адміністрацыйнай панэлі.
- Недастатковая налада абароны аперацыйнай сістэмы на серверы. Калі такая ўразлівасць прысутнічае, то у зламысніка з'яўляецца магчымасць выканаць адвольны код.
- Дрэнныя паролі. Адна з самых відавочных уразлівасцяў сайтаў - выкарыстанне слабых значэнняў для абароны сваёй ўліковага запісу. Асабліва, калі яна з правамі адміністратара.
- Перапаўненне буфера. Выкарыстоўваецца пры замене дадзеных з памяці, з прычыны чаго можна ўнесці свае карэктывы. Сустракаецца пры задзейнічанні незакончанага праграмнага забеспячэння.
- Замена старонак вэб-рэсурсу. Аднаўленне дакладнай копіі сайта, зайшоўшы на які карыстальнік можа не западозрыць падвоху і ўвесці свае асабістыя дадзеныя, праз некаторы час пераходзячыя зламысніку.
- Адмова ў абслугоўванні. У асноўным пад гэтым тэрмінам разумеюць атаку на сервер, калі ён атрымлівае вялікую колькасць запытаў, якія не можа апрацаваць і папросту «падае» ці ж становіцца не здольным абслужыць сапраўдных карыстальнікаў. Ўразлівасць ж заключаецца ў тым, што фільтр па IP не настроены належным чынам.
Пошук уразлівасцяў сайта
Спецыялісты па бяспецы праводзяць асаблівы аўдыт вэб-рэсурсаў на наяўнасць памылак і недахопаў, здольных прывесці да ўзлому. Такая праверка сайта называецца пентестинг. У працэсе аналізуецца зыходны код, якія выкарыстоўваюцца CMS, наяўнасць уразлівых модуляў і шмат іншых цікавых праверак.
SQL-ін'екцыя
Гэты тып праверкі сайта ўсталёўвае, фільтруе Ці скрыпт атрыманыя значэнні пры складанні запытаў у базу дадзеных. Правесці найпростае тэставанне можна і ўручную. Як знайсці ўразлівасць SQL на сайце? Зараз будзе разгледжана.
Да прыкладу, ёсць нейкі сайт мой-сайт.рф. На яго галоўнай старонцы ёсць якой-небудзь каталог. Зайшоўшы ў яго, можна выявіць у адраснай радку нешта накшталт мой-сайт.рф /? Product_id = 1. Ёсць верагоднасць, што гэта і ёсць запыт у базу. Для пошуку ўразлівасцяў сайта спачатку можна паспрабаваць падставіць у гэты радок адзінарную двукоссе. У выніку павінна быць мой-сайт.рф /? Product_id = 1 '. Калі пры націску клавішы "Увод" на старонцы з'явілася паведамленне пра памылку, то ўразлівасць маецца.
Зараз можна выкарыстоўваць розныя варыянты падбору значэнняў. Прымяняюцца аператары аб'яднання, выключэнні, каментавання і многія іншыя.
XSS
Дадзены тып уразлівасці можа быць двух відаў - актыўны і пасіўны.
Актыўны мяркуе выкарыстанне ўчастка кода ў базу дадзеных або прама ў файл на сэрвэры. Ён больш небяспечны і непрадказальны.
Пасіўны рэжым прадугледжвае завабліванне ахвяры на пэўны адрас сайта, які змяшчае шкодны код.
З дапамогай XSS зламыснік можа скрасці Cookies. А ў іх могуць утрымлівацца важныя дадзеныя карыстальніка. Яшчэ больш жудаснымі наступствамі валодае крадзеж сесіі.
Таксама хакер можа выкарыстоўваць скрыпт на сайце такім чынам, каб форма ў момант адпраўкі яе карыстальнікам аддавала інфармацыю наўпрост у рукі зламысніку.
Аўтаматызацыя працэсу пошуку
У сетцы можна знайсці масу цікавых сканараў уразлівасцяў сайта. Нейкія распаўсюджваюцца асобна, нейкія ідуць у камплекце з некалькімі падобнымі і аб'яднаны ў адзін агульны вобраз, накшталт Kali Linux. Далей будзе прадстаўлены агляд найбольш папулярных сродкаў для аўтаматызацыі працэсу збору інфармацыі аб уразлівасцях.
Nmap
Самы просты сканер уразлівасцяў сайта, які можа паказаць такія падрабязнасці, як аперацыйная сістэма, якія выкарыстоўваюцца парты і сэрвісы. Тыповы прыклад ужывання:
nmap -sS 127.0.0.1, дзе замест лакальнага IP трэба падставіць адрас рэальнага тэставага сайта.
Выснову паведаміць аб тым, якія сэрвісы запушчаны на ім, і якія парты ў гэты момант адчыненыя. На аснове гэтай інфармацыі можна паспрабаваць выкарыстаць ужо выяўленыя ўразлівасці.
Вось некалькі ключоў nmap для больш небесстаронняга сканавання:
- -A. Агрэсіўныя сканаванне, якое вываліў вельмі шмат інфармацыі, але можа заняць значнае час.
- -O. Спрабуе вызначыць аперацыйную сістэму, задзейнічаную на сэрвэры.
- -D. Падменіць IP адрасы, з якіх вырабляецца праверка, каб пры праглядзе логаваў сервера немагчыма было вызначыць, адкуль адбылася атака.
- -p. Дыяпазон партоў. Праверка адразу некалькіх службаў на наяўнасць адкрытых.
- -S. Дазволіць паказаць патрэбны IP адрас.
WPScan
Дадзеная праграма для сканавання сайта на ўразлівасць ўваходзіць у дыстрыбутыў Kali Linux. Арыентаваны на праверку вэб-рэсурсаў на сістэме кіравання кантэнтам WordPress. Напісана яна на Ruby, таму запускаецца прыкладна так:
ruby ./wpscan.rb --help. Гэта каманда пакажа ўсе даступныя ключы і літары.
Для запуску просты праверкі можна выкарыстоўваць каманду:
ruby ./wpscan.rb --url нейкі-сайт.ру
Увогуле WPScan - даволі простая ў выкарыстанні ўтыліта для праверкі свайго сайта на "ВордПресс" на ўразлівасці.
Nikto
Праграма праверка сайта на ўразлівасці, якая таксама маецца на дыстрыбутыве Kali Linux. Валодае багатым функцыяналам пры ўсёй сваёй прастаце:
- сканаванне па пратаколах з HTTP і HTTPS;
- абыход многіх ўбудаваных інструментаў выяўлення;
- множны сканаванне партоў, нават у нестандартным дыяпазоне;
- падтрымка выкарыстання проксі-сервераў;
- маецца магчымасць рэалізацыі і падлучэння убудоў.
Для запуску nikto трэба, каб у сістэме быў устаноўлены perl. Найпросты аналіз выконваецца так:
perl nikto.pl -h 192.168.0.1.
Праграме можна «скарміць» тэкставы файл, у якім пералічаныя адрасы вэб-сервераў:
perl nikto.pl -h file.txt
Дадзеная ўтыліта дапаможа не толькі спецыялістам па бяспецы для правядзення пентестов, але і адміністратарам сетак і рэсурсаў для падтрымання працаздольнасці сайтаў.
Burp Suite
Вельмі магутны інструмент для праверкі не толькі сайтаў, але маніторынгу любой сеткі. Валодае убудаванай функцыяй мадыфікацыі перадаюцца запытаў на тэстоўваны сервер. Разумны сканер, здольны ў аўтаматычным рэжыме шукаць па некалькі тыпаў уразлівасцяў адразу. Маецца магчымасць захаваць вынік бягучай дзейнасці, а затым аднавіць яе. Гнуткасць, якая дазваляе не толькі выкарыстоўваць іншыя ўбудовы, але і пісаць свае.
Ўтыліта мае ўласны графічны інтэрфейс, што, несумненна, зручна, асабліва для пачаткоўцаў карыстальнікаў.
SQLmap
Напэўна, самы зручны і магутны інструмент для пошуку SQL і XSS уразлівасцяў. Спіс яго добрых якасцяў можна выказаць так:
- падтрымка практычна ўсіх відаў сістэм кіравання базамі даных;
- уменне выкарыстоўваць шэсць асноўных спосабаў вызначэння і прымянення SQL-ін'екцый;
- рэжым перабору карыстальнікаў, іх Хэшаў, пароляў і іншых дадзеных.
Перад выкарыстаннем SQLmap звычайна спачатку знаходзяць ўразлівы сайт з дапамогай дорков - нарыхтовак запытаў пошукавых сістэм, якія дапамагаюць арыентыровачна адсеяць неабходныя вэб-рэсурсы.
Затым адрас старонак перадаецца праграме, і яна праводзіць праверку. Пры паспяховым вызначэнні уразлівасці ўтыліта можа сама яе і выкарыстоўваць, атрымліваючы поўны доступ да рэсурсу.
Webslayer
Невялікая ўтыліта, якая дазваляе правесці атаку пераборам. Можа «брутфорсу» формы рэсурсу, сесіі, параметры сайта. Падтрымлівае шматструменнасць, што выдатна адбіваецца на прадукцыйнасці. Таксама можа рэкурсіўна падбіраць паролі ва ўкладзеных старонках. Маецца падтрымка проксі.
Рэсурсы для праверкі
У сетцы прысутнічае некалькі інструментаў для праверкі ўразлівасці сайтаў онлайн:
- coder-diary.ru. Просты сайт для тэставання. Дастаткова ўвесці адрас правяраемага рэсурсу і націснуць «Праверыць». Пошук можа заняць працяглы час, таму ёсць магчымасць паказаць адрас сваёй электроннай пошты для таго, каб па завяршэнні праверкі вынік прыйшоў прама ў скрыню. У базе сайта маецца каля 2500 вядомых уразлівасцяў.
- https://cryptoreport.websecurity.symantec.com/checker/. Анлайн-сэрвіс праверкі наяўнасці сертыфіката SSL і TLS ад кампаніі Symantec. Патрабуецца толькі адрас правяраемага рэсурсу.
- https://find-xss.net/scanner/. Праект скануе асобны файл PHP сайтаў на ўразлівасці або іх архіў у фармаце ZIP. Можна паказаць тыпы правяраемых файлаў і сімвалы, па якіх экрануюцца дадзеныя ў скрыпце.
- http://insafety.org/scanner.php. Сканар для тэставання сайтаў на платформе "1С-Битрикс". Просты і зразумелы інтэрфейс.
Алгарытм правядзення праверкі на ўразлівасці
Любы спецыяліст па сеткавай бяспекі выконвае праверку па простаму алгарытме:
- Спачатку ён ўручную або з дапамогай аўтаматызаваных інструментаў аналізуе, ці маюцца на сайце уразлівасці. Калі так, то ён вызначае іх тып.
- У залежнасці ад разнавіднасці прысутнай уразлівасці выбудоўвае далейшыя хады. Напрыклад, калі вядомая CMS, то падбіраецца адпаведны метад атакі. Калі ж гэта SQL-ін'екцыя, то падбіраюцца запыты ў базу дадзеных.
- Галоўнай задачай з'яўляецца атрыманне прывілеяванага доступу да адміністрацыйнай панэлі. Калі ж такога дамагчыся не ўдалося, можа варта паспрабаваць формы і падробку адрасы з укараненнем у яго скрыпту з наступнай перадачай ахвяры.
- Калі якая-небудзь атака або пранікненне атрымалася, то пачынаецца збор дадзеных: ці маюцца яшчэ ўразлівасці, якія недахопы прысутнічаюць.
- На аснове атрыманых дадзеных спецыяліст па бяспецы паведамляе ўладальніку сайта аб існуючых праблемах і спосабах іх устаранення.
- Уразлівасці ўхіляюцца яго рукамі ці з прыцягненнем іншых майстроў.
Некалькі саветаў па бяспецы
Тым, хто самастойна займаецца распрацоўкай ўласнага сайта, дапамогуць гэта простыя парады і рэкамендацыі.
Ўваходныя дадзеныя трэба фільтраваць такім чынам, каб скрыпты або запыты не маглі запусціцца аўтаномна або аддаць дадзеныя з базы.
Выкарыстоўваць складаныя і ўстойлівыя паролі для ўваходу ў адміністрацыйную панэль, каб пазбегнуць магчымага брутфорсу.
Калі сайт будуецца на аснове якой-небудзь CMS, трэба як мага часцей абнаўляць яе і прымяняць толькі правераныя убудовы, шаблоны і модулі. Не варта перагружаць сайт непатрэбнымі кампанентамі.
Часцей правяраць часопісы сервера на наяўнасць падазроных уваходжанняў або дзеянняў.
Праверыць уласны сайт некалькімі сканарамі і сэрвісамі.
Правільная налада сервера - залог яго стабільнай і бяспечнай працы.
Па магчымасці трэба выкарыстоўваць сертыфікат SSL. Гэта дазволіць пазбегнуць перахопу асабістых і канфідэнцыйных дадзеных паміж серверам і карыстальнікам.
Інструменты для забеспячэння бяспекі. Мае сэнс усталяваць ці падключыць праграмныя сродкі для прадухілення пранікненняў і знешніх пагроз.
заключэнне
Артыкул атрымалася аб'ёмная, аднак нават яе не хопіць для апісання ў падрабязнасцях ўсіх аспектаў сеткавай бяспекі. Для таго каб справіцца з задачай абароны інфармацыі, прыйдзецца вывучыць нямала матэрыялаў і інструкцый. А таксама асвоіць кучу інструментаў і тэхналогій. Можна звярнуцца за радай і дапамогай да прафесійным кампаніям, якія спецыялізуюцца на правядзенні пентестов і аўдыту вэб-рэсурсаў. Хоць такія паслугі і выльюцца ў нядрэнную суму, усё ж бяспека сайта можа быць значна даражэй як у эканамічным плане, так і ў рэпутацыйнай.
Similar articles
Trending Now