Како да пребарувате за злонамерен код без антивируси и скенери. Како да пребарувате за злонамерен код без антивируси и скенери Како да пребарувате за злонамерен код на WordPress

1. Отпакувајте го во папката на страницата.
2. следете ја врската your_site/fscure/
3. сè

Што може да направи?

1. Автоматско пребарување на вируси со потписи.
2. Пребарајте низа во датотеките
3. Бришење датотеки
4. Закрпи злонамерен код користејќи регуларни изрази

Сценариото нема да ја заврши целата работа за вас и бара одредено минимално знаење. Се препорачува да се направи резервна копија на страницата пред работа.

Како работи?

Кога за прв пат се лансира, тој создава индекс на датотеки. Датотеката fscure.lst е во папката. Прикажува листа на датотеки што содржат потенцијално злонамерни потписи. „Потенцијално злонамерно“ значи дека ќе треба да одлучите дали е вирус или не. Списокот на потписи е конфигуриран во датотеката config.php, константна SCAN_SIGN. Со стандардните поставки, скриптата не ги проверува датотеките js и не содржи потписи за нив.

Најчести проблеми

1. не го креира индексот fscure.lst. Може да се случи ако нема доволно права. Ставете 777 на папката fscure

2. Грешка 5xx. Најчесто „504 Gateway Time-out“. Сценариото нема време за обработка и паѓа поради тајмаут. Во овој случај, постојат неколку начини да се забрза неговата работа. Брзината првенствено зависи од големината на индексот. Тоа е во датотеката fscure.lst. Вообичаено, датотека до 5 MB може да се обработи во 90% од случаите. Ако нема време, можете да ја намалите „алчноста“ на скриптата со забрана на скенирање *.jpg;*.png;*.css во конфигурацијата.
Во датотеката config.php.

// разграничувач; define("FILES_EXCLUDE","*.js;*.jpg;*.png;*.css");

3. Хостинг издава предупредување како
(HEX)base64.inject.unclassed.6: u56565656: /var/www/u65656565/data/www/34535335353.ru/fscure/index.php

Нема вирус во сценариото и никогаш немало. И (HEX)base64.inject.unclassed.6 е конструкција како "echo base64_decode(" , која често се среќава и сама по себе е прилично безопасна. Меѓутоа, во најновата верзија го заменив овој код.

Што да направите ако не сте во можност сами да го пронајдете вирусот?

Можете да ме контактирате за помош. Моите стапки се скромни. Работата си ја гарантирам 6 месеци. Цената на работата е 800 рубли. за 1 локација. Ако има неколку страници на вашата сметка, цената се одредува поединечно.

Ако успеете да направите сè сами, би ви бил благодарен за финансиска награда или за врска до мојот сајт.

Мои услови:
yandex
41001151597934

веб пари
Z959263622242
R356304765617
E172301357329

Мора да се направи заедно. Ако ја елиминирате првичната причина за хакирањето (на пример, ранливост во наставката CMS), но не ги отстранувајте сите малициозни датотеки, напаѓачот ќе може повторно да добие пристап до страницата користејќи една од неговите скрипти. Ако ги избришете сите преземени злонамерни скрипти, но не ја елиминирајте причината за хакирањето, напаѓачот ќе може повторно да ја хакира страницата и повторно да прикачува скрипти на неа.

Специјалист со соодветно знаење и искуство треба да изврши работа за отстранување на малициозни скрипти и анализирање на причините за хакирање:

  • За да отстраните малициозни скрипти, потребно е познавање на програмскиот јазик PHP, како и познавање на „внатре“ на популарниот CMS (Joomla, WordPress, итн.) и екстензии за нив. Ова знаење е потребно за да се разликуваат скриптите директно од CMS и неговите екстензии од необични датотеки, а исто така да може недвосмислено да се одредат какви дејства ги извршуваат кога ќе се сретнат со сомнителни скрипти.
  • За да се анализираат причините за хакирање, потребно е искуство со администрацијата на серверот. Ова е неопходно за да се анализира состојбата на датотеките на сметката, времето на нивното менување, а исто така и да се споредат овие податоци со дневниците на серверот за да се утврди кои дејства на напаѓачот довеле до хакирање на страниците.

Затоа, ако вашата страница е хакирана, се препорачува, за да се избегнат повторени хакирања, да не ја вршите работата сами, туку да контактирате со специјалист кој ќе ја спроведе потребната дијагностика и ќе препорача или изврши потребни дејствијада го реши проблемот, и кој може да гарантира за квалитетот на добиениот резултат.

Сепак, постојат голем број мерки кои во некои случаи помагаат да се врати безбедното функционирање на локацијата без посебно знаење. Ограничувањето на методот подолу е тоа што за да се продолжи со работата на страницата, потребна е резервна копија од неа создадена пред хакирањето. Ако датумот на прекршувањето е непознат, можете да го испробате овој метод користејќи ја најстарата достапна резервна копија. Второто ограничување, како последица на првото, е тоа што по обновувањето на страницата, податоците се додаваат на страницата по креирањето на резервната копија за враќање (на пример, нови написи, слики или документи). Ако треба да ја вратите страницата додека задржувате нови податоци, треба да контактирате со специјалист.

Овие мерки не ни дозволуваат да ја утврдиме причината за хакирањето на страницата, но секоја од нив е насочена кон елиминирање на една од потенцијалните причини за пенетрација. Бидејќи точната причина за хакирањето е непозната, неопходно е да се изведат сите. Дејствијата се распоредени по таков редослед што прво целосно да се елиминира можноста напаѓачот да ги продолжи своите активности на страницата или сметката за хостирање во моментално, а потоа спречете напаѓач да влезе на страницата во иднина.

Чекорите подолу претпоставуваат дека имате само една веб-локација на вашата хостинг сметка. Ако има неколку сајтови на сметката, тогаш и тие би можеле да бидат хакирани, а страницата би можела да биде хакирана преку нив. Потребно е или да се префрли локацијата со која се изведуваат реставраторски работи на посебна сметка или да се изврши реставрација за сите локации хостирани на сметката во исто време.

Редоследот на дејствата е важен, па затоа е неопходно да се извршат по точниот редослед по кој се наоѓаат подолу.

  • Веднаш по откривањето дека некоја страница е хакирана, неопходно е целосно да се блокира пристапот на посетителите до неа. Ова, прво, ќе го спречи напаѓачот да врши злонамерни активности на страницата, и второ, нема да му дозволи да се меша во реставраторската работа. Овој чекор е многу важен, бидејќи отстранувањето на злонамерните скрипти и елиминирањето на причината за хакирањето не се случува преку ноќ - по правило, потребни се неколку часа. Ако страницата остане достапна однадвор, напаѓачот ќе може повторно да прикачува скрипти на делот од страницата што е веќе исчистен. Во овој случај, напаѓачот може да користи различни IP адреси за поврзување, така што одбивањето пристап само до списокот на IP адреси нема да работи. За да се осигура дека страницата е исчистена од откриени малициозни скрипти, неопходно е целосно да се блокира можноста на напаѓачот да пристапи до страницата, што може да се направи само со целосно блокирање на страницата за сите посетители. Контактирајте ја службата за техничка поддршка на хостингот што ја хостира вашата страница за да ја блокирате.
  • Откако ќе ја блокирате страницата, треба да ги проверите компјутерите од кои работевте со страницата со модерен антивирус со ажурирани бази на податоци за вируси. Ако страницата била хакирана со кражба на лозинки за сметки со помош на вирус, мора да бидете сигурни дека понатамошната работа со хакираната страница се врши од компјутер што нема вируси, инаку по промената на лозинките за пристап тие може повторно да бидат украдени.
  • По блокирањето на страницата и проверката за вируси, треба да ги промените сите лозинки за пристап до вашата сметка: пристап преку FTP, преку SSH, како и пристап до контролната табла за хостирање. Ако напаѓачот пристапил до датотеките на сметката користејќи еден од овие методи, откако ќе се сменат лозинките, тој веќе нема да може да го прави тоа.
  • По промената на лозинките, мора да ги уништите сите процеси на серверот што се извршуваат под сметката на која се одржува страницата. Процесите што ги започна напаѓачот во заднина, без да бидат уништени, ќе можат повторно да постават малициозни скрипти на страницата откако ќе се извршат работите за реставрација. За да се спречи тоа да се случи, мора да се уништат сите процеси што се извршуваат пред да се блокира страницата. Веб-страницата треба да биде веќе блокирана во овој момент, така што напаѓачот не може да започне нови процеси со пристап до една од неговите скрипти на страницата. За да ги уништите процесите што се извршуваат на вашата сметка, контактирајте ја службата за техничка поддршка на хостингот што ја хостира вашата страница.
  • Сега е невозможно да навлезете на локацијата однадвор и можете да започнете да ја обновувате.
  • Пред понатамошни активности, избришете ги сите постоечки датотеки на страницата за да се уверите дека нема злонамерни скрипти или скрипти CMS во кои напаѓачот вметнал злонамерен код. Овој чекор е исто така важен бидејќи при враќање на страницата од резервна копија, датотеките што постоеле пред обновувањето не секогаш се бришат. Ако, по враќањето од резервна копија, старите злонамерни скрипти останат на страницата, напаѓачот ќе може повторно да влезе на страницата. Можете да го избегнете ова со бришење на сите датотеки на страницата пред да извршите обновување.
  • Откако ќе ги избришете сите датотеки на страницата, вратете ја страницата од резервна копија создадена пред да биде хакирана. Честопати е доволно да се обноват само датотеките на страницата, но ако, по нивното враќање, се забележат грешки во работата на страницата, неопходно е целосно да се врати страницата: и датотеките и базата на податоци.
  • По враќањето од резервна копија, ажурирајте го вашиот систем за управување со содржина (CMS) и екстензии на најновите верзии. Ова е неопходно за да се исклучи присуството на познати пропусти на страницата преку кои може да се хакира. Како по правило, ажурирањето може да се направи преку делот за администрација на CMS. За добивање целосни инструкцииЗа да го ажурирате CMS, мора да отидете на веб-страницата на развивачот на системот. Важно е да се ажурира не само самиот CMS, туку и сите негови екстензии, бидејќи хакирањето често се случува преку ранливост присутна во една од екстензии на CMS (на пример, приклучоци, теми, графички контроли итн.). Во овој момент, сè уште е невозможно да се одблокира страницата за посетителите, бидејќи може да биде сè уште ранлива. За да пристапите до вашата страница за ажурирање, контактирајте со техничката поддршка на хостингот што ја хостира вашата страница и побарајте да дозволите пристап до страницата само од IP адресата на вашиот компјутер. Можете да ја дознаете вашата IP адреса, на пример, на inet.yandex.ru.
  • По ажурирањето на системот за управување со страницата и неговите екстензии, одете во делот за администрација на страницата и сменете ја лозинката за пристап до администраторот до неа. Осигурајте се дека меѓу корисниците на страницата нема други корисници со административни привилегии (тие би можеле да бидат додадени од напаѓач) и доколку се најдат, избришете ги.
  • Сега кога страницата е вратена од резервна копија и не содржи злонамерни скрипти, CMS и неговите екстензии се ажурирани на најновите верзии, во која нема пропусти, а лозинките за пристап до страницата и сметката за хостирање се сменети, можете повторно да ја отворите страницата за посетителите.
  • Сите горенаведени дејства мора да се извршат во согласност со наведениот редослед, без пропусти или какви било промени. Ако дејствата се извршени неточно, на страницата може да останат малициозни скрипти или пропусти, како резултат на што напаѓачот може повторно да биде хакиран по кратко време. Ако поради некоја причина не е можно да се извршат горенаведените чекори во формата во која се наведени, контактирајте со специјалист за да извршите работа за обновување на локацијата по хакирање.

    За да ја заштитите вашата страница од повторени хакери во иднина, мора да се придржувате до следниве препораки:
  • Следете ги ажурирањата на CMS и екстензии за него на веб-локациите на програмерите и навремено ажурирајте ги на најновите верзии. Ако коментарот за ажурирање вели дека поправа ранливост, инсталирајте го ажурирањето што е можно поскоро.
  • Работете со страницата и сметката за хостирање само од компјутери кои се заштитени од вируси со модерни антивируси со постојано ажурирани бази на податоци за вируси.
  • Користете сложени лозинки за да не може да се погодат преку пребарување на речник.
  • Не зачувувајте ги лозинките FTP и SSH во програмите за поврзување со страницата и не зачувувајте ја лозинката за пристап до административната област на страницата и контролната табла за хостирање во вашиот прелистувач.
  • Од време на време (на пример, еднаш на секои три месеци), менувајте ги лозинките за пристап до страницата и сметката за хостирање.
  • Ако се откриени вируси на компјутерот од кој работевте со страницата, променете ги лозинките за пристап до страницата и сметката за хостирање што е можно побрзо. Треба да ги промените сите лозинки: пристап до лозинките преку FTP, SSH, лозинката од административниот панел на страницата, како и лозинката од контролната табла за хостирање.
  • Не обезбедувајте пристап до страницата на трети страни освен ако не сте уверени дека и тие ќе ги следат овие упатства.
  • Злонамерниот код навлегува на страницата преку невнимание или злонамерна намера. Целите на малициозниот код варираат, но во суштина тоа му штети или го попречува нормалното функционирање на веб-локацијата. За да отстраните злонамерен код на WordPress, прво мора да го пронајдете.

    Што е злонамерен код на страницата на WordPress?

    Од страна на изглед, најчесто, злонамерниот код е збир на букви и симболи од латинската азбука. Всушност, ова е шифриран код со кој се врши ова или она дејство. Дејствата може да бидат многу различни, на пример, вашите нови објави веднаш се објавуваат на ресурс од трета страна. Ова во суштина ја краде вашата содржина. Кодовите имаат и други „задачи“, на пример, поставување на појдовни врски на страниците на страницата. Задачите можат да бидат најсофистицирани, но едно е јасно: малициозните кодови треба да се ловат и отстранат.

    Како малициозните кодови влегуваат на веб-локација?

    Исто така, постојат многу дупки за кодовите да влезат во страницата.

  • Најчесто, ова се теми и приклучоци преземени од „левите“ ресурси. Иако, таквата пенетрација е типична за таканаречените шифрирани врски. Експлицитниот код не завршува на страницата.
  • Најопасна е пенетрацијата на вирусот кога е хакирана страница. Како по правило, хакирањето на страницата ви овозможува да поставите не само „еднократен код“, туку и да инсталирате код со елементи на малициозен софтвер (злонамерна програма). На пример, наоѓате код и го бришете, но тој се враќа по некое време. Има, повторно, многу опции.
  • Дозволете ми веднаш да забележам дека борбата против ваквите вируси е тешка, а рачното отстранување бара знаење. Постојат три решенија за проблемот: првото решение е да користите антивирусни додатоци, на пример, додаток наречен BulletProof Security.

    Ова решение дава добри резултати, но бара време, иако малку. Постои порадикално решение за да се ослободите од злонамерните кодови, вклучително и сложените вируси, ова е да ја вратите страницата од претходно направени резервни копиисајт.

    Бидејќи добар веб-администратор го прави тоа периодично, можете да се вратите на неинфицирана верзија без никакви проблеми. Третото решение е за богатите и мрзливите, само контактирајте со специјализирана „канцеларија“ или индивидуален специјалист.

    Како да барате злонамерен код на WordPress

    Важно е да се разбере дека малициозниот код на WordPress може да биде во која било датотека на страницата, а не нужно во работната тема. Тој може да смисли приклучок, тема или „домашен“ код земен од Интернет. Постојат неколку начини да се обидете да пронајдете злонамерен код.

    Метод 1: Рачно. Скролувате низ сите датотеки на страницата и ги споредувате со датотеките на неинфицирана резервна копија. Ако најдете туѓ код, избришете го.

    Метод 2: Користење на додатоци за безбедност на WordPress. На пример,. Овој приклучок има одлична карактеристика, скенирање на датотеки на сајтови за присуство на туѓ код и приклучокот совршено се справува со оваа задача.

    Метод 3. Ако имате разумна поддршка за хостирање и ви се чини дека има некој друг на страницата, замолете го да ја скенира вашата страница со нивниот антивирус. Нивниот извештај ќе ги наведе сите заразени датотеки. Следно, отворете ги овие датотеки уредувач на тексти отстранете го злонамерниот код.

    Метод 4. Ако можете да работите со SSH пристап до директориумот на страницата, тогаш продолжи, тој има своја кујна.

    Важно! Без разлика како пребарувате злонамерен код, пред да го пребарувате и потоа да го избришете кодот, затворете го пристапот до датотеките на страницата (вклучете го режимот за одржување). Запомнете за кодовите што самите се обновуваат кога ќе се избришат.

    Пребарајте малициозни кодови користејќи ја функцијата eval

    Постои таква функција во PHP наречена eval. Тоа ви овозможува да извршите кој било код на неговата линија. Покрај тоа, кодот може да се шифрира. Поради кодирањето, злонамерниот код изгледа како збир на букви и симболи. Две популарни шифрирања се:

  • База64;
  • Рот13.
  • Соодветно на тоа, во овие шифрирања функцијата евалуација изгледа вака:

    • eval(base64_decode(...))
    • eval (str_rot13 (...)) //во внатрешни наводници, долги, нејасни групи на букви и симболи..

    Алгоритмот за пребарување на малициозен код со помош на функцијата eval е како што следува (работиме од административниот панел):

    • одете во уредникот на страницата (Изглед → Уредник).
    • копирајте ја датотеката functions.php.
    • отворете го во текстуален уредувач (на пример, Notepad++) и побарајте го зборот: eval.
    • Ако го најдете, не брзајте да избришете ништо. Треба да разберете што „бара“ да се изврши оваа функција. За да се разбере ова, кодот треба да се дешифрира. За декодирање постојат онлајн алатки наречени декодери.
    Декодери/енкодери

    Декодерите работат едноставно. Го копирате кодот што сакате да го дешифрирате, ставете го во полето за декодер и декодирате.

    Во времето на пишувањето, не најдов ниту еден шифриран код пронајден во WordPress. Го најдов кодот од веб-страницата на Joomla. Во принцип, нема разлика во разбирањето на декодирањето. Ајде да ја погледнеме фотографијата.

    Како што можете да видите на фотографијата, функцијата eval по декодирањето не прикажала страшен код кој ја загрозува безбедноста на страницата, туку шифрирана врска за авторски права од авторот на шаблонот. Може да се отстрани, но ќе се врати по ажурирањето на шаблонот ако не го користите .

    Како заклучок, би сакал да забележам, за да не се добие вирус на страницата:

    • Злонамерниот код на WordPress често доаѓа со теми и приклучоци. Затоа, не инсталирајте шаблони и приклучоци од „лево“, непроверени ресурси, а ако го правите, проверете ги внимателно за присуство на врски и извршни функции на PHP. Откако ќе инсталирате приклучоци и теми од „нелегални“ ресурси, проверете ја страницата со антивирусен софтвер.
    • Бидете сигурни дека правите периодични резервни копии и изведувајте други.
    Злонамерен JavaScript

    Моето мислење, а тоа е дека е полесно и поефективно да се заштитат од инјектирани малициозни скрипти на прелистувачот (зачувани XSS напади) со помош на алатки на прелистувачот, беше наведено претходно: . Заштитата на прелистувачот од JavaScript, која се состои од додавање код за филтрирање на html-страниците на веб-локацијата, е веројатно сигурна; сепак, присуството на таква заштита не ја елиминира потребата да се користи и филтер за сервер. За истите XSS напади, можете да организирате дополнителна линија на одбрана на серверот. Мораме да запомниме и за можноста напаѓачот да воведе не засновани на прелистувач, туку скрипти од страна на серверот (php) во HTML порака испратена од страница, која прелистувачот нема да може да ја препознае.

    Напаѓачката скрипта, без разлика дали е базирана на прелистувач или базирана на сервер, е програма; мора да се мисли дека програмата секогаш ќе има некои симболични разлики од „чистиот“ html. Ајде да се обидеме да најдеме такви разлики и да ги искористиме за да изградиме HTML филтер на серверот. Подолу се дадени примери на злонамерен JavaScript.

    XSS:

    Некој текст


    Некој текст

    Шифриран XSS:

    Некој текст


    Некој текст

    Прелистувачите го обновуваат текстот од примитивите на знаци не само што се наоѓаат во контејнерите на HTML (помеѓу ознаките за отворање и затворање), туку и внатре во самите ознаки (помеѓу< и >). Кодирањето на URL-то е дозволено во http адресите. Ова го отежнува препознавањето на малициозниот код на страната на серверот, бидејќи истата низа на знаци може да биде претставена на различни начини.

    XSS црви:

    "+innerHTML.slice(action= (method="post")+".php",155)))">





    alert("xss");with(new XMLHttpRequest)open("POST","post.php"),send ("content="+_.outerHTML)

    Горенаведените XSS црви се само неколку од многуте поднесени на натпреварот на Роберт Хансен (познато како RSnake) во јануари 2008 година за најкраток злонамерен JavaScript црв (резултати од натпреварот).

    Знаци на XSS напади

    XSS скрипта е програма која пристапува до објектите на DOM (Document Object Model) и нивните методи. Во спротивно, веројатно нема да биде на било кој начин штетно. На пример, низа JavaScript
    onckick="var a = "xss""
    не влијае на моделот на објектот на документот, па дури и ако е вграден во HTML ознака, таквата низа е безопасна. Само со манипулирање со објектите на HTML документот и нивните методи, хакерот може да предизвика значителна штета на страницата. На пример, линијата
    onmousemove="document.getElementsByTagName("body").innerHTML="XSS""
    веќе ја заменува содржината на страницата.

    Знак за пристап до DOM методите се заградите, како и точките лево од знакот за еднаквост. Заградите може да се користат и во html за да се постави боја во формат rgb(), меѓутоа, боите на фонтот и позадината во html се поставени на уште најмалку три начини. Затоа, заградите може да се жртвуваат без да се загрози експресивноста на html текстот. Неопходно е да се прифати како правило дека заградите се во ознаката (т.е. помеѓу< и >) - ова е многу опасно, ако добиеме порака од корисник на серверот, оваа порака содржи загради внатре во ознаките, тогаш најсоодветното нешто што треба да направиме е да ја блокираме таквата порака.

    Точката може да биде содржана во HTML ознаки: кога се одредува адресата на врската (ознака ); при поставување на големината на html елементите (style="height:1.5in; width:2.5in;" ). Но карактерни секвенци на формата
    буквата точка е еднаква
    не може да биде во HTML ознаки. Ако наведената секвенца е присутна во HTML ознака, пораката од корисникот најверојатно содржи скрипта и треба да биде блокирана.

    Друг очигледен знак за опасност е симболот „+“ во ознаката. Не постои такво нешто во HTML без скрипт. Ако најдеме плус во ознаките, безмилосно ја блокираме пораката.

    За шифрирање со примитиви на знаци во HTML ознаки, добронамерен корисник на страницата додава коментар користејќи визуелен уредник, никогаш нема да дојде до трчање. Употребата на симболични примитиви во ознаките не дава никакви придобивки во форма на дополнителни изразни средства; бара само дополнително време за пишување. Во повеќето случаи, некој би помислил дека добронамерниот корисник не ни знае дека има одредени примитиви на знаци во HTML. Оттука и правилото: знакот во ознаката е доказ за напад на локацијата. Според тоа, ако го видиме ова, ја блокираме пораката.

    Слично правило треба да се усвои во однос на симболот „%“, кој може да се користи во кодирањето на URL-то. Сепак, процентите се користат и во „чистиот“ HTML за да се постават релативните големини на елементите. Опасни комбинации се оние во кои знакот „%“ е веднаш проследен со буква или број.

    Неутрализирање на скриптите на серверот

    За разлика од JavaScript толкувачите во прелистувачите, PHP преведувачот на серверот не дозволува слобода при пишување текст на програмата. Затоа, за да се неутрализира можна скрипта за сервер, доволно е целосно да се заменат во HTML пораката на корисникот сите знаци кои се неопходни при пишување PHP програма со нивните HTML примитиви. Првите знаци што треба да се заменат се долар и долна црти, точка, круг, квадрат и виткани протези, знаци плус и минус, знак за назад црта.

    PHP филтер за HTML пораки

    $message е html пораката добиена од визуелниот уредник до серверот.

    // запомнете ја должината на пораката $lenmessage = strlen($порака); // отсечете ја ознаката за коментар $message = preg_replace("//", "", $message); // отсечете ја секоја ознака во која атрибутот „src“ се однесува на надворешен ресурс $message = preg_replace("/]+?src[\w\W]+\/\/[^>]+?>/i" , " ", $message); // отсечете ја секоја ознака што содржи кој било знак освен: - a-z 0-9 / . : ; " = % # простор $message = preg_replace("/]+[^->a-z0-9\/\.\:\;\"\=\%\#\s]+[^>]+?> /i", "", $порака); // отсечете ја секоја ознака што ја содржи низата ". a-z =" $message = preg_replace("/]+?\.+?\=[^>]+?>/i", "", $message); // отсечете ја секоја ознака што ја содржи низата "% a-z" или "% 0-9" $message = preg_replace("/]+?\%+?[^>]+?>/i", "", $ порака); // отсечете ја секоја ознака што ја содржи секвенцата "скрипта" или "js:" $message = preg_replace("/]*?script[^>]*?>/i", "", $message); $message = preg_replace("/]*?js:[^>]*?>/i", "", $порака); // отсечете ја секоја ознака што започнува со знак различен од "a-z" или "/" $message = preg_replace("/]*?>/i", "", $message); // проверете: ако пораката е скратена, тогаш прекинете ја програмата $lenmessage2 = strlen($порака); if ($lenmessage != $lenmessage2) ( печати "Пораката не може да се додаде"; излез; ) // изврши замена од крај до крај на опасните знаци со нивните соодветни примитиви $message = str_replace("$", "$" , $порака); $порака = str_replace ("_", "_", $порака); $порака = str_replace(".", ".", $порака); $порака = str_replace(chr(92), "\", $порака); // \ $порака = str_replace("(", "(", $порака); $порака = str_replace()", ")", $порака); $message = str_replace("[", "[", $порака); $порака = str_replace("]", "]", $порака); $порака = str_replace ("(", "(", $порака); $порака = str_replace()", ")", $порака); $message = str_replace("?", "?", $порака); // сега пораката е потврдена, скриптите во неа се неутрализирани

    Треба да се забележи дека филтерот не ги отстранува спарените ознаки. Да речеме дека добивме
    Кликни тука!
    Филтерот само ќе ја отсече ознаката , но спарената (затворање) ознака ќе остане. Ако испраќате пораки што содржат ознаки без соодветни парови до прелистувачот, може да имате проблеми во форма на „искривување“ на страницата. Не е познато на која ознака за отворање прелистувачот ќе одговара на преостанатата неспарена ознака за затворање. Затоа, а исто така и од безбедносни причини, пораките во кои нешто е отсечено од филтерот воопшто не треба да се испраќаат до прелистувачот. Подобро е да испечатите нешто како „Пораката не може да се додаде“ и да излезете од програмата.

    Пораката се очекува да биде запишана во датотека (не во база на податоци).

    Дискусија

    Ќе бидам благодарен за критиките. Пишете на форумот за поддршка, во делот

    
    Врв