Blog

9 mar 2017

Pêşveçûna Bernameyê: Hook Hê Çi?

Pêşveçûna Bernameyê: Hook Hê Çi?

Divê Divê Divê Li ser Hook Nîşeyên Hûrgelan Nizanim.

Hook çi ye?Di bernameya pêşveçûnê de, Hooking ev fikrît e ku destûra karûbarê bernameya guhertina destûrê dide. Pêvajoya kodê we pêşniyar dike ku hûn tevgerê yekemîn a tiştek biguherînin bêyî guhartina koda xweya duyemîn. Ev ji hêla stratejiyên hook re derbas dibe.

Bi vî rengî bi karanîna pir bi karûbarên nû yên karmendên ku ji bo serîlêdanên nû ve, bi awayekî din re peywendiya bihêzkirina pêvajoyê û peyamên alternatîfê yên pergalê digire. Hooks ji bo ku bi pergala her mesajê hewce dike ku pergala amadebûna amadekirina pergala pêvajoya darizandinê tête kirin. Divê hema gava ku pêwîst be û di derheqê giyanî de bê derxistin destnîşan kirin.

Vebijêrin ku hûn bikar tînin ku Pergala Rêveberiya Mirovan (CMS) ji derve ve tê bikaranîn û dibe ku hûn îdarekî super super dixwazin ku her yek carî postê belav kirin û hişyar e ku nexweşî ya cîhûbar e. Wê çend rêgezên wê pêşde bibin:

Guhertina KMS çavkaniya çavkaniyek ne hişk e, paşê paşê li ser cîhê jêrîn ya jêrîn hûn ê tengahiyê xwe bigire ser guhertina xwe winda bikin an jî kapîtalek ku hûn her tiştê berdewam bikin berdewam bikin;

  • Xwe taybetmendiya xwe ya CMS çêtirîn fikrên xirab e, hemî tiştan tê hesibandin, ne ku hûn tiştên nû yên nû çêbikin yan jî karsaziyên xwe hene tune ye an jî hiştin ku çi çêbikin;
  • Vê gengaziya bikaranîna hook, ku ew e, hebe ku kontrola CMS bi modulên derveyî an naverokên ji bo nêvên pêşniyaz kirin ku di demeke craved de darve kirin, kontrol bikin, ji bo vê yekê, belavkirina nû posts.
  • Di bin erdê de beşek ji karûbarên hûrsê bi gelemperî ji amûrê ve tê bikaranîn. Prensîpek helwesta hêja ya hookan nabe ku koda pêşîn biguherînin. Di tevahiya rêbazên mezin ên rêbazên yên hemî çavkaniyên çavkaniyên vekirî yên ku di nav xwe de dimîne dakêşînin ku mantra ku xwe dihêle, navenda xwe nake. Tevî nûçeyên nûvekirî nayê zanîn, her kesê ku paşê paşê bête bîr kirin, dê li ser guhartinê bifikirin, û ewê ku kêfê nîqaş e, ew e, ne tewrê.

Pêvekêşiya pisporiya din ya ku ji bo stratejên hook ên ku destnîşan dike ku destûra xwe ji armancên xwe yên bêdeng derxistin e. Armancên stratejiyên kêşeyên berbiçav yên berbiçav û tevgerên cûda yên ku ji hêsankirina pêkanîna pêkanîna ji bo damezirandineke taybet.

Teknolojiya Teknolojî ya Navovative Perwerdehiya Pêşveçûna Pêşveçûna Bernameya Gurgaon, Delhi NCR li Hindistanê.

Hooks As Design Patterns

Ew xemgîn e ku bîr bînin ku pirrjimar (hemî) pîşesaziyên celebên semantîk ji bo hooks nîşan dide. Ew ji wan re dipeyivin ka çawa çawa pergala sabû-sîstemê pirsgirêkên pirsgirêkên darizandin. Hin bi serweriya pêşveçûna pêşveçûnê ve girêdayî ye: Abstract, Factory, Builder, Ferman, Interpreter, Çavdêr, Prototype, Dewlet û Stratejiyê.

Hinek jî di mînakên yekbûyî û pêşveçûna pêşveçûnê de: Methoda Mode û Bridge.

Semantîk di navnîşan de navnîşa teknolojiya hookê ve tê ragihandin (wek nimûne, di Fermana, stratejiyê bi navê darvekirinê tê kirin ().

Hooking

Pêşveçûna Bernameya Pêşveçûna - Pêşniyar 1 teknolojiyên virtual di rê de stratejiyên stratejîk de têne veguhestin, lê ji ber ku teknolojiyên vakslêdanê veguherin, kolektîfê kapîtalek taybetmendiya taybetî dema ku hûn di kodê we re dibêjin nas nakin. Compiler, bi vî rengî, Peymana Mifteya Virtual-Virtual (VMT) dike, ku rêberî lêpirsînek li navnîşanên navnîşên li ser davêjî. Her stratejiyek pirtûka yek ji hêla VMT ve tê de çalak kirin. VMT ji pirsek hemî stratejiyên sîgorteyê yên ji bo pêşniyarên wê ve hene, û her weha ew eşkere dikin. Ji ber vê yekê, teknolojiyên şîfre ji hêla stratejiyên sereke ve bêtir bikar tînin, lê bi bila rastiya ku ew lezgîn dibin.

Ji ber ku VMT peyamên ku ji bo kapasîteyên navbeynî yên navnîşan hene, çi tête kirin ku di navnîşa bîranîna yekem de bi navnîşa karûbarê rastek qanûnî ye. Bi van xetên ku teknolojî tê gotin, bêtir destnîşan kirin, û tevgerên nû yên revandî yên wê bêne darve kirin.

Hooking API

Pêşveçûna Bernameyê - Hook-Point 2- Pêvajoya API-ê Haqing rast e ku hûn ji bo pergalên pergala xebatkar re veguherînin. Bi kapasîteya tawanbarên wusa bikişînin, hûn dikarin pîvanên xwe biguherînin ku çalakiya ku di destpêkê de bêne guhartin biguherînin.

Ji bo nimûne, nimûne qeydkirina xweya taybet, hûrgilî ji rêvegirtinê biparêzin, û daxwaza muwekîlê muxalefetê bipirse ku ji arşîv û cîtera arşîv derxînin.

Bi rastî, biryara herî mezin ya li herêmê ewlehiyê ye, wek nimûne, antivirus û antîspyware. Dibe ku ev dibe ku, dibe ku di rewşeke me ya gelemperî de ku li ser Hooking API, dikare bibe awayek sereke.

Navnîşa Programming Hooking, di rewşeke taybet de, an API ji OS, an jî ji her DLL ve tê dabeşandin, û li darvekirina navnîşa xwe li cîhekî din biguherînin, her tişt bêtir, kapîtalek din. Du awayên bingehîn hene:

EAT û IAT Ev tabloyên navnîşan hene ku nîşan bide Navnîşana API. Bi veguhestina van xewnên, ew ji wan re têgotin, nîşan bide me. Bibe ku ew dikare bibe, eger evEE / DLL nayê APIê nabe, ev stratejiyê dê kar nekin;

Daxuyaniya rasterast ya pirzimanî: Dema ku ji berî gotibû, di bûyera ku ew bi navê koda destpêkê ya API-ê ve zêde bike, em dikarin "hook it", ku li ser her tiştê API-ê tê vebawer kirin, bikişînin. Bibe ku ew dibe ku, hebe pirsgirêk heye: Heke piştî koda kodê hate destnîşankirin, me hewce kir ku ji bo API-yekem bangî, em ê li ser paşeroja me vebigere, û bendava starek dê bêne çêkirin. Pergala yek ji hook-a-heqê kapasîteya ku ji bo API-ê re dîsa biceribîne, ew bi dest pê kir. Bibe ku ev dibe ku, navendê vê navendê de, çend-an-ê-daxwazên API-ê dikarin bêne çêkirin û dê nayê telefonê nekin;

Inline Hook ew e ku em ê rêbazên sereke yên kapîtaliyê bigirin, û em ji bo Herek, Paş an Destek ji bo kapîtalê me ve bazirganî dikin.

Daxuyaniyek nivîsandin: Sîstema pergala karûbarê pêdiviya API-ê hooking dike. Divê em ê bizanibin ka çiqas API-ê dixebitin?

Gelek hooking

Pêşveçûna Bernameya Pêşveçûn - - Hook-Point 3As teknîkên hook-ê çi hûrgulên berbiçav yên berbiçav û tevgerên cûda yên ku ji hêla veguhestina pêkanîna pêkanîna pêkanîna pêvajoya taybetî ve tê veguherînek li ser kontrola yekser dibe. Armancên derheqên hêsûlên gavên amade dike. Di dawiya rojê de, dema ku derfet dibe, desthilatdarên stratejên li ser tiştên ku ji ber ku taybetî taybetmendî amade dike amadekirin, bersiv dide. Cûreyên hûrsiyan: peyamên paceyê, bundles ji portsên nameyan re.

Inside IAT Hooking

Pêşveçûna Bernameya Pêşveçûn - - Hook - Pêvajoya 4Each pêvajoya di Windows de tabloyek heye ku navê Navnîşana Navnîşan (IAT) ya Importê, navê ku ji hêla DLL-ê her şêweya şandî hatiye şandin tête xuyakirin. Ev pirtûk bi pêşveçûnê bi navnîşên hêmanên DLL-ê ve di dema wext de ye.

Karaneyên taybetî yên taybet bikar tînin, em dikarin sifrê IAT binivîse, lêbigereyek ku bi navnîşa xwe ya navnîşî ya navnîşanek bala xwe veguherîne, bi vê guherînê bi veguhestinê veguhestin. Di dema ku pêvajoya hewl dide pêkanîna kapasîteyê, navnîşa wê di nav tablea IAT de tête çêkirin, û poşterek vegerî ye. Ji ber ku tîrêjê IAT hate guhertin, kapasîteya hûrgelê tête sazkirin ya pêşîn a yekem û kodê di nav pêvajoyê de tête çêkirin.

Netfilter Hook

Pêşveçûna Bernameya - Hook - Xinta 5Netfilter 2.4 ji hêla xerîb a Linux subystem e. Ew bi berpirsiyariya bundle, NAT, firewall, veşartî, di nav kesên din de ye. Netfilter bi awayek berbiçav e, û belgeyên wê qedandî ye. Ew derfetên bikaranîna Hooks di kernelê Kernel de belav dikin, bi karanînîna wê bikar bînin û bi gelemperî bi alîyê grûbê ve têne qebûl kirin. Ev Hooks çend hinek encamên berbiçav bistînin û dikarin di dema demên taybetî de tevlihev bikin.

Xelasî:

Pêşveçûnê - Pêşveçûna Bernameyê - Hook-encam çi ye? Pêvajoya bernameyên hingîngê bandor e û çarçoveyek encamên ji bo pîşesaziya pisporên pisporê vekin, lê divê ew bi hişyariyê bi karûbarên ku ji wan re di vîdyoya pêvajoyê de guherîn û guhertina yekem tevgerên OS, serîlêdanên an naveroka nivîsbarên din ên din, ew zehmet dibe ku fêmkirina pispora fêrbûnê. Ji bilî vê, wekî berê di vê gotara de hatiye diyarkirin, bikaranîna van sîstemên bêyî paradigm dikare pêkanîna serîlêdanên serîlêdanê bikin.

GTranslate Your license is inactive or expired, please subscribe again!