בלאָג

9 דינסטיק קסנומקס

ווייכווארג אַנטוויקלונג: וואָס איז אַ כוק?

/
Posted by

ווייכווארג אַנטוויקלונג: וואָס איז אַ כוק?

מיר זאָל וויסן וועגן עטלעכע טייפּס פון האָאָק.

וואָס איז אַ קרוק?אין ווייכווארג אַנטוויקלונג, האָאָקינג איז אַ געדאַנק אַז פּערמיץ טשאַנגינג די פירונג פון אַ פּראָגראַם. דער מעגלעכקייט קאָד אָפפערס איר צו טוישן די ערשטער פירונג פון עפּעס אָן טשאַנגינג דיין קאָד פון די קאַמפּערינג קלאַס. דעם איז פאַרטיק דורך אָווועררייטינג די קרוק סטראַטעגיעס.

דעם סאָרט פון באַניץ איז גאָר נוציק אויף חשבון צו לייגן נייַ פאַנגקשאַנאַליטי צו אַפּלאַקיישאַנז, אַדישנאַלי ענקערידזשינג די קאָרעספּאָנדענץ צווישן בייַטנ לויט דער ריי פּראָוסידזשערז און אַרטיקלען פון די סיסטעם. האָאָקס טענד צו רעדוקציע סיסטעם דורכפירונג דורך יקספּאַנדינג די פּריפּערינג מאַסע אַז די סיסטעם דאַרף צו דורכפירן פֿאַר יעדער אָנזאָג. עס זאָל זיין באַקענענ נאָר ווען פארלאנגט און יוואַקיאַווייטיד בייַ די ערליאַסט געלעגנהייט.

פאַרזיכערונג אַז איר זענט ניצן אַ קונה מאַנאַגעמענט סיסטעם (קמס) פון אַ אַוציידער און איר זאל וועלן אַ יבער יגזעקיאַטיוו צו זיין קאַאָרידזשד דורך בליצפּאָסט יעדער מאָל די אנדערע פּאָסטן איז פונאנדערגעטיילט און אַז דאָס פירונג איז נישט די פעליקייַט פון די מיטל. עס וואָלט זיין אַ פּאָר רוץ פאָרויס:

טוישן די קמס מקור קאָד איז נישט אַ קלוג געדאַנק, נאָך אַלע אין די ווייַטערדיק דערפרישן פון די מיטל איר וועט קאַנפראַנט די שוועריקייט פון לוזינג דיין ענדערונג אָדער נישט האָבן די קאַפּאַציטעט צו פאָרזעצן אַלץ דערקוויקט;

  • מאַכן דיין אייגן ספּעציפיש קמס איז אן אנדער שרעקלעך געדאַנק, אַלע זאכן געהאלטן, איר טאָן ניט האָבן גענוג ענערגיע אָדער אַסעץ גענוג צו מאַכן נייַ זאכן אָדער אַפֿילו האַלטן אַרויף וואָס צו פאַבריקייט;
  • ויספאָרשן די ליקעליהאָאָד פון יוטאַלייזינג אַ קרוק, וואָס איז, קאָנטראָלירן אויב די קמס קוקט ין אַרויס מאַדזשולז אָדער מאַדזשולז פֿאַר עלעמענטן פון אַ געפֿינט נאָמען צו זיין עקסאַקיוטאַד בייַ די געבראכט מינוט, פֿאַר דעם סיטואַציע, די פאַרשפּרייטונג פון נייַע אַרטיקלען.
  • די אַראָפּ צו ערד טייל פון יוטאַלייזינג כוקס פלאַקטשוייץ בכלל פון מיטל צו קיילע. דער פּרינציפּ גינציק שטעלע פון ​​כוקס איז ניט צו טוישן די ערשטער קאָד. אין אַלע גרויס פיר מאַניואַלז פון אַלע עפענען מקור דעוויסעס וואָס ינטערמיטאַנטלי דערהייַנטיקונגען די מאַנטראַ אַז ראַשסעס זיך טוט נישט טוישן די צענטער. ניט קיין ענין ווי צו מאַכן ריפרעשיז אַנימאַגינאַבאַל, קיין יחיד וואָס קומט שפּעטער צו טאָן, וועט נישט טראַכטן וועגן די ענדערונג, און דער מענטש וואס קימט דיסקאַסט עס איז איר, ניט די אַפּאַראַט.

די עקסטענסיביליטי איז אן אנדער בילכער סטאַנדפּוינט פון יוטאַלייזינג די האַק סטראַטעגיעס וואָס אַלאַוז די אַפּלאַקיישאַן צו פאַרגרעסערן זייַן סטאַביל ינטערפייסיז. האָק סטראַטעגיעס דעקאָופּלע סטאַביל ינטערפייסיז און פירונג פון אַ פאַרשיידנקייַט פון פּלאַץ וואָס קענען אַרויסקומען פון ינסטאַגענשאַן פון אַ אַפּלאַקיישאַן פֿאַר אַ ספּעציפיש באַשטעטיקן.

יננאָוואַטיווע טעכנאָלאָגיע סאַלושאַנז אָפפערס סאָפטווער דעוועלאָפּמענט טראַינינג אין גורגאַאָן, דעלי נקר אין ינדיאַ.

האָקקס ווי פּלאַן פּאַטערנז

עס איז ינטריגינג צו טאָן אַז פילע (אַלע) אַוטליין דיזיינז יגזאַמאַנד סעמאַנטיקס פֿאַר כוקס. זיי רעדן צו ווי צו ויספירן סאַב-סיסטעמס פון פּראָבלעם געביטן. עטלעכע פאַרלאָזנ זיך אויף די רעגירונג פון דיטאַטשמאַנט אַנטוויקלונג: אַבסטראַקט, פאַקטאָרי, בילדער, באַפֿעלן, ינטערפּריט, אַבזערווער, פּראָטאָטיפּע, שטאַט, און סטראַטעגיע.

אנדערע אין ביידע ביישפילן פון יונאַפאַקיישאַן און צעטיילונג אַנטוויקלונג: מוסטער מעטאַד און בריק.

סעמאַנטיקס איז קאַנווענשאַנאַלי קאַמיונאַקייטיד אין די כוק טעכניק נאָמען (פֿאַר בייַשפּיל, אין די קאַמאַנד, די סטראַטעגיע איז גערופן ויספירן ()).

 

ווירטואַל מעטאַד טיש האָאָקינג

ווייכווארג אַנטוויקלונג - וואָס איז אַ כוק - פונט קסנומקסווירטואַל טעקניקס זענען געבראכט אין אַ ינסיסטיוואַליאַבאַל מאַרשרוט פון סטאַטיק סטראַטעגיעס, אָבער ווייַל די ווירטואַל טעטשניקוועס קענען זיין געביטן, די קאַמפּיילער טוט נישט וויסן די אַדרעס פון אַ ספּעציפיש ווירטואַל קאַפּאַציטעט ווען איר רופן עס אין דיין קאָד. דער קאַמפּיילער, אַזוי, אַסעמז אַ ווירטואַל מעטאַד טיש (וומט), וואָס גיט אַ וועג צו אָנפרעג צו קאַפּאַציטעט ווענדט אין רונטימע. יעדער איין ווירטואַל סטראַטעגיע איז אַקטיווייטיד דורך די וומט. די וומט פון אַ קשיא כּולל אַלע די ווירטואַל סטראַטעגיעס פֿאַר זייַן פּריקערסערז, און אַדישנאַלי יענע עס פּראָוקליימז. דעריבער, ווירטואַל טעקניקס נוצן מער זכּרון ווי עלעמענט סטראַטעגיעס, אין להכעיס פון די פאַקט אַז זיי לויפן ספּעעדיער.

זינט וומט איז אַ טיש וואָס כּולל די פּאָינטערס מיט זיקאָרן ווענדט פֿאַר די צובינד קאַפּאַסאַטיז, וואָס זאָל זיין געטאן איז צו צושטעלן די ערשטער זיקאָרן אַדרעס מיט אַ אַדרעס פון אַ לאַדזשיטאַמאַט פאַרטשעפּען אַרבעט. צוזאַמען די שורות, די גערופן טעכניק וועט זיין אָוווערריטאַן, און די נייַ קאַוואַטיד פירונג פון די קאַפּאַציטעט וועט זיין עקסאַקיוטיד.

 

Hooking API

ווייכווארג אַנטוויקלונג - וואָס איז אַ פאַרטשעפּען - פונט קסנומקסהאָטע האַקינג אַפּי פּראָצעדור באמת פּערמיץ איר צו ריינווענט די יסודות פון די אַרבעט סיסטעם. מיט די פיייקייַט צו כאַפּן אַזאַ טשאַרדזשאַז, איר קענען טוישן זייער פּאַראַמעטערס דורך טשאַנגינג די טעטיקייט אַז וואָלט זיין געטאן טכילעס.

עס איז פּרידיוואַבאַל, פֿאַר בייַשפּיל, צו שטיק קאַנסאַליישאַן פון אַ ספּעציפיש רעקאָרד, האַלטן אַ אַפּלאַקיישאַן פון פליסנדיק, און דאַרפן אַ קליענט פאַרפעסטיקט צו ספּער אַ אַרקייוו צו די קרייַז, און סעטעראַ.

טאקע, די גרעסטע דורכשניט פון באַשלוס איז אין דער געגנט פון זיכערהייַט, למשל, אַנטיווירוס און אַנטיספּיוואַרע. זייט אַז, ווי עס קען, עס זענען סאַבמישאַנז אין אונדזער פּראָסט אַנטוויקלונג ווו די האָאָקינג אַפּי, קענען זיין זייַענדיק דער הויפּט וועג אויס.

פּראָגראַממינג צובינד כוקינג, אין אונדזער ספּעציפיש ומשטאַנד, ימפּלייז געטינג אַ אַפּי פון די אַס, אָדער פון קיין דלל, און טוישן זייַן טיפּיש דורכפירונג צו ערגעץ אַנדערש, אַלע די מער פּונקט, צו אן אנדער קאַפּאַציטעט. עס זענען פונדאַמענטאַלי צוויי אַפּראָוטשיז:

עסן און יאַט: אַלע עקסע / דלל כּולל אַפּי צו אַרייַנפיר און אָפּצאָל טישן. די טישן אַנטהאַלטן פּוינטערז וואָס ווייַזן די API פּאָזיציע פּוינט. דורך טשאַנגינג די פּוינטערז, מאכן זיי אָנווייַזן אונדזער קאַללבאַקק, מיר האָבן אַ פאַרטשעפּען. זיין אַז, ווי עס קען, אויב דעם עקסע / דלל טוט ניט אַרייַנפיר אַפּי ס, דעם סטראַטעגיע וועט נישט אַרבעטן;

כאָטש עס איז געווען ביכולת צו געבן אַ רוף צו אונדזער קאַללבאַקק צו די אָנהייב פון די אַפּי קאָד, מיר קענען "כאַפּן עס", אַזוי אַז אונדזער קאַפּאַציטעט איז פליסנדיק אין וואָס פונט די API איז גערופן. עס איז מעגלעך אַז עס איז מעגלעך אַז אויב נאָך אונדזער קאָד איז כאַנדאַלד, מיר דאַרפֿן צו רופן די ערשטער אַפּי, מיר וואָלט פאַלן צוריק אויף אונדזער קאַללבאַקק, און אַ סטאַק פלאַדינג וואָלט זיין באשאפן. איינער אָרדענונג איז פאַרריכטן די קרוק צו האָבן די קאַפּאַציטעט צו רופן דעם אַפּי, שייַעך-טריינג עס אַמאָל עס איז עקסאַקיוטאַד. זייט אַז, ווי עס קען, אין דעם צענטער ערד, אַ ביסל אַפּי רופט קענען זיין געמאכט און וואָלט נישט ויספירן אונדזער קאַללבאַקק;

Inline Hook איז די פונט וואָס מיר באַקומען די הויפּט גיידליינז פון אַ קאַפּאַציטעט, און מיר האַנדלען פֿאַר אַ שפרינג, פּוש אָדער אַ רוף פֿאַר אונדזער קאַפּאַציטעט.

פּריסקרייבד לייענען: פֿענצטער אַרבעט סיסטעם אַדישנאַלי אַנדערפּינס כוקינג אַפּי. מיר זאָל וויסן ווי ווינדאָוז אַפּי כאַנגקינג פאַנגקשאַנז?

 

אָקקאַסיאָן האָאָקינג

ווייכווארג אַנטוויקלונג - וואָס איז אַ כוק - פונט קסנומקסאַס כאָק טעקניקס דעקאָופּלע סטאַביל ינטערפייסיז און פירונג פון אַ פאַרשיידנקייַט פון פּלאַץ וואָס קענען אַרויסקומען פון די ינסטאַטיאַנאַ פון אַ אַפּלאַקיישאַן פֿאַר אַ באַזונדער באַשטעטיקן כאַפּאַנז אַ מאַפּאָלע פון ​​קאָנטראָל. אָבדזשעקץ געלעגנהייט האַנדלערס מאָדיפיצירן פּריפּערינג טריט. אין די סוף פון די טאָג, ווען אַ פאַל קומט, די האַנדלער ריספּאַנדז קאַנדזשערינג כוק סטראַטעגיעס אויף פאַר-ענראָולד אַבדזשעקץ וואָס ויספירן באַזונדער געלעגנהייַט פּריפּערינג אַקטיוויטעטן. קאַסעס פון מאל: פֿענצטער אַרטיקלען, באַנדאַלז לאַנדינג פון קאָרעספּאָנדענץ פּאָרץ.

 

ין יאַט כוקינג

ווייכווארג אַנטוויקלונג - וואָס איז אַ האָאָק - פּוינט 4Each פּראָצעס אין ווינדאָוז האט אַ טיש גערופן ימפּאָרט אַדרעס טיש (יאַט), וואָס סטאָרז פּאָינטערס צו די קאַפּאַסיז געשיקט דורך די דללס פון יעדער פּראָצעדור. דעם טיש איז פּאָפּולאַטעד פּראַגרעסיוולי מיט די אַדרעס פון די יסודות פון די דללס בייַ לויפן צייַט.

ניצן ספּעציעלע קאַפּאַסאַטיז, מיר קענען מאַכן די יאַט טיש סקריטאַבלע, צו זיין גלייַך צו טוישן זייַן אַדרעס דורך אַ אַדרעס פון אַ מנהג קאַפּאַציטעט, שייַעך-דענאָטינג די טיש ווי לייענען-פשוט נאָך דעם ענדערונג. אין די פונט ווען די פּראָצעדור פרוווט צו רופן דעם קאַפּאַציטעט, די אַדרעס איז גאַט אין די יאַט טיש, און אַ טייַטל איז אומגעקערט. ווי די ייאַט טיש איז פארענדערט, די מנהג קאַפּאַציטעט איז געבראכט שטעלן אַרויף פון דער ערשטער קאַפּאַציטעט און די קאָד ינפיוזד אין די פּראָצעדור איז גאַטאַן.

 

Netfilter Hook

ווייכווארג אַנטוויקלונג - וואָס איז אַ פאַרטשעפּען - פּוינט 5Netfilter איז אַ לינוקס שטיק סאַבסטיישאַן מער נאָוטווערדי ווי קסנומקס. עס איז אין אָפּצאָל פון פּעקל סעפּערייטינג, נאַט, פיירוואַל, רידערעקשאַן, צווישן אנדערע. נעטפילטער איז ויסערגעוויינלעך, און זייַן דאַקיומענטיישאַן איז פאַרטיק. עס בלעטער די ליקעליהאָאָד פון יוטאַלייזינג האָקקס אין די קערנעל קאָד, מאכן זייַן יוטאַלאַזיישאַן גאָר פלעקסאַבאַל און בכלל באקומען דורך די גרופּע. די האָאָקס לאָזן אַ ביסל קאַנסיוואַבאַל רעזולטאטן און קענען פּלאָמבירן אין ווי טריגערז פֿאַר ספּעציפיש מאל.

 

מסקנא:

ווייכווארג אַנטוויקלונג - וואָס איז אַ קרוק - קאַנקלודינגדי האָאָקינג פּראָגראַממינג פּראָוסידזשערז זענען עפעקטיוו און עפענען אַרויף אַ פאַרנעם פון קאַנסיוואַבאַל אַוטקאַמז פֿאַר ווייכווארג ענדזשאַנירז, אָבער עס זאָל זיין געניצט מיט פלינק זינט זיי אַרייַננעמען אַ מער באַוווסט ינטראַסאַסי אין דעם טייַך פון פּראָוסידזשערז און טוישן די ערשטער אָנפירן פון די אַס, אַפּלאַקיישאַנז אָדער אנדערע ווייכווארג סעגמאַנץ, מאכן עס שווער צו באַגרייַפן די סייכל פון ווייכווארג. אנדערע, ווי פריער ספּעסאַפייד אין דעם אַרטיקל, די יוטאַלאַזיישאַן פון די סיסטעמס אָן פּעראַדיים קען דעבאַסע די דורכפירונג פון די אַפּלאַקיישאַנז.

לאָזן אַ ענטפֿערן

GTranslate Please upgrade your plan for SSL support!
GTranslate Your license is inactive or expired, please subscribe again!