דף הבית » איך ל » מה זה הזרקת קוד ב- Windows?

    מה זה הזרקת קוד ב- Windows?

    הזרקת קוד נפוצה ב- Windows. יישומים "להזריק" חתיכות של הקוד שלהם לתהליך פועל אחר כדי לשנות את התנהגותו. טכניקה זו יכולה לשמש טוב או רע, אבל בכל מקרה זה יכול לגרום לבעיות.

    הזרקת קוד הוא גם נקרא בדרך כלל הזרקת DLL כי קוד מוזרק הוא לעתים קרובות בצורה של קובץ DLL (קישור דינמי הספרייה). עם זאת, יישומים יכולים גם להזריק סוגים אחרים של קוד שאינם DLLs לתוך תהליך.

    מה קוד הזרקת משמש

    הזרקת קוד משמש כדי להשיג כל מיני טריקים ופונקציונליות ב- Windows. בעוד תוכניות לגיטימיות להשתמש בו, הוא משמש גם על ידי תוכנות זדוניות. לדוגמה:

    • תוכניות אנטי וירוס לעיתים קרובות להזריק קוד לתוך דפדפני אינטרנט. הם יכולים להשתמש בו כדי לפקח על תעבורת הרשת ולחסום תוכן אינטרנט מסוכן, למשל.
    • תוכניות זדוניות עלולות להוסיף קוד לדפדפן האינטרנט שלך כדי לעקוב טוב יותר אחר הגלישה שלך, לגנוב מידע מוגן כמו סיסמאות ומספרי כרטיסי אשראי ולשנות את הגדרות הדפדפן.
    • Stardock של WindowBlinds, אילו נושאים שולחן העבודה שלך, מזריק קוד כדי לשנות את אופן הצבעים של Windows.
    • גדרות של Stardock מזריק קוד כדי לשנות את הדרך שבה שולחן העבודה של Windows עובד.
    • AutoHotkey, אשר מאפשר לך ליצור סקריפטים להקצות hotkeys המערכת כולה במערכת, מזריק קוד כדי להשיג זאת.
    • גרפיקה של הנהג כמו של NVIDIA להזריק DLLs כדי להשיג מגוון של משימות הקשורות גרפיקה.
    • תוכניות מסוימות מזריזות קבצי DLL להוספת אפשרויות תפריט נוספות ליישום.
    • משחקי מחשב רמאות לעתים קרובות להזריק קוד לתוך משחקים כדי לשנות את התנהגותם ולהשיג יתרון לא הוגן על פני שחקנים אחרים.

    האם הזרקת קוד רע?

    טכניקה זו משמשת ללא הרף על ידי מגוון רחב של יישומים ב- Windows. זוהי הדרך האמיתית היחידה להשיג מגוון רחב של משימות. לעומת פלטפורמת ניידת מודרנית כמו iOS של אפל או אנדרואיד של גוגל, שולחן העבודה של Windows הוא כל כך חזק, כי אם מציעים סוג זה של גמישות למפתחים.

    כמובן, עם כל הכוח הזה מגיע קצת סכנה. הזרקת קוד עלולה לגרום לבעיות ולאגים ביישומים. גוגל אומרת שמשתמשי Windows שיש להם קוד שהוזרק לדפדפן Chrome שלהם צפויים יותר ב -15% לחוות קריסות של Chrome, ולכן Google עובדת על חסימה. מיקרוסופט מציינת כי ניתן להשתמש בהזרמת קוד על ידי אפליקציות זדוניות כדי לחבל בהגדרות הדפדפן, וזו אחת הסיבות לכך שהיא כבר חסומה ב- Edge.

    מיקרוסופט גם מספקת הוראות לבדיקת אם קבצי DLL של צד שלישי נטענים ב- Microsoft Outlook, מכיוון שהם גורמים לכל כך הרבה קריסות של Outlook.

    כעובדת מיקרוסופט הציבה אותו בבלוג למפתחים משנת 2004:

    הזרקת DLL לעולם אינה בטוחה. אתה מדבר על גמירה קוד לתוך תהליך שמעולם לא תוכנן, נבנה או נבדק על ידי המחבר של התהליך, וכן Co-opting או יצירת פתיל כדי להפעיל את הקוד. אתה מפעיל את הסיכון של יצירת תזמון, סינכרון, או בעיות משאבים שלא היו שם לפני או להחמיר בעיות שהיו שם.

    במילים אחרות, הזרקת קוד היא סוג של גרזן מלוכלך. בעולם אידיאלי, תהיה דרך בטוחה יותר להשיג את זה כי לא לגרום לחוסר יציבות פוטנציאלית. עם זאת, הזרקת קוד היא רק חלק רגיל של פלטפורמת היישום של Windows היום. זה כל הזמן קורה ברקע במחשב Windows. אתה יכול לקרוא לזה רע הכרחי.

    כיצד לבדוק עבור DLLs מוזרקים

    אתה יכול לבדוק את הזרקת קוד על המערכת שלך עם היישום עוצמה Explorer של מיקרוסופט. זה בעצם גרסה מתקדמת של מנהל המשימות ארוז עם תכונות נוספות.

    הורד והפעל את סייר התהליך אם תרצה לעשות זאת. לחץ על תצוגה> תצוגת חלונית תחתונה> קבצי DLL או הקש Ctrl + D.

    בחר תהליך בחלונית העליונה והסתכל בחלונית התחתונה כדי לראות את קבצי ה- DLL שטעונים. העמודה 'שם חברה' מספקת דרך יעילה לסנן רשימה זו.

    לדוגמה, זה נורמלי לראות מגוון של קבצי DLL שנעשו על ידי "Microsoft Corporation" כאן, כפי שהם חלק מ- Windows. זה גם נורמלי לראות DLLs שנעשו על ידי אותה חברה כמו התהליך המדובר, "גוגל בע"מ" במקרה של Chrome ב מסך למטה.

    אנחנו יכולים גם לזהות כמה קבצי DLL שנעשו על ידי "AVAST תוכנה" כאן. זה מצביע על כך התוכנה Avast antimalware על המערכת שלנו הוא הזרקת קוד כמו "Avast Script לחסום מסנן הספרייה" לתוך Chrome.

    אין הרבה מה שאתה יכול לעשות אם אתה מוצא הזרקת קוד במערכת שלך - מלבד הסרת ההתקנה של קוד הזרקת התוכנית כדי למנוע ממנה לגרום לבעיות. לדוגמה, אם Chrome מתרסק באופן קבוע, ייתכן שתרצה לראות אם יש תוכניות המזרימות קוד ל- Chrome ומסירות אותן כדי למנוע מהן לחבל בתהליכים של Chrome.

    כיצד עובד קוד הזרקת?

    הזרקת קוד אינה משנה את היישום הבסיסי בדיסק. במקום זאת, היא ממתינה ליישום זה והיא מזרימה קוד נוסף לתהליך הרצה זה כדי לשנות את אופן פעולתו.

    Windows כולל מגוון ממשקי תכנות יישומים (APIs) שניתן להשתמש בהם להזרמת קוד. תהליך יכול לצרף את עצמו תהליך היעד, להקצות זיכרון, לכתוב DLL או קוד אחר לזיכרון הזה, ולאחר מכן להנחות את תהליך היעד כדי לבצע את הקוד. Windows אינו מונע תהליכים במחשב שלך מלהפריע זה לזה.

    לקבלת מידע טכני נוסף, לבדוק את זה בבלוג לכתוב להסביר כיצד מפתחים יכולים להזריק קבצי DLL ואת זה להסתכל על סוגים אחרים של הזרקת קוד ב- Windows.

    במקרים מסוימים, מישהו עשוי לשנות את הקוד הבסיסי בדיסק - לדוגמה, על ידי החלפת קובץ DLL שמגיע עם משחק מחשב עם שינוי אחד כדי לאפשר רמאות או פירטיות. זה מבחינה טכנית לא "הזרקת קוד". הקוד אינו מוזרק לתוך תהליך ריצה, אבל התוכנית היא להיות מרומה לתוך טעינת DLL שונים עם אותו שם.

    קרדיט תמונה: Lukatme / Shutterstock.com.