Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
lifer — مُفحص ملفات الارتباط (الاختصارات) في ويندوز | Kitploit
أدوات/GitHubGitHub/paul-tew/lifer
التحقيق الجنائي الرقميجمع المعلوماتالتحاليل الرقمية الجنائيةتحليل الملفات الثنائية
GitHubpaul-tew/lifer

lifer

مُفحص ملفات الارتباط (الاختصارات) في ويندوز

عرض المستودع
689منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

lifer

أداة فحص جنائي لملفات الروابط في ويندوز (أي اختصارات ويندوز)

ملخص

lifer هي أداة سطر أوامر تعمل على ويندوز أو أنظمة يُونكس، مستوحاة من الورقة البحثية "معنى ملفات الروابط في الفحوصات الجنائية" بقلم هاري بارسونج والمتاحة هنا. بدأت حياتها كأداة خفيفة كتبتها لاستخراج معلومات معينة من ملفات الروابط للمساعدة في الاستفسارات التي كنت أجريها أثناء عملي كمحلل جنائي حاسوبي. والآن بعد تقاعدي، أسعى لتوسيع نطاق فائدتها ونشرها ليستفيد منها الآخرون.

المعلومات المستخرجة تتوافق مع وثيقة المواصفات المفتوحة من مايكروسوفت 'MS-SHLLNK' والتي يمكن العثور عليها عبر الإنترنت هنا. في وقت كتابة هذه السطور، تم تنفيذ معظم أجزاء الإصدار 4.0 من المواصفات. آمل في المستقبل تنفيذ تحليل ملفات قوائم الانتقال غير المفتوحة.

مثال على الاستخدام

تفاصيل الملفات الموجودة في دليل Test وكيفية استخدامها موجودة في ملف '.\Test\Tests.txt'. فيما يلي ملخص موجز...

بمجرد تثبيت الأداة، افتح نافذة سطر أوامر (مثل bash أو Powershell) ومن المجلد './lifer/src' اكتب:

root@kitploit:~
lifer -s ./Test/Test1.lnk

يجب أن يعطيك هذا الناتج:

root@kitploit:~
LINK FILE -------------- .\Test\Test1.lnk
{**OPERATING SYSTEM (stat) DATA**}
  Last Accessed:       2017-04-18 20:28:19 (UTC)
  Last Modified:       2017-04-18 20:28:19 (UTC)
  Last Changed:        2017-04-18 20:28:19 (UTC)

{**LINK FILE EMBEDDED DATA**}
  {S_2.1 - ShellLinkHeader}
    Attributes:          0x00000020   FILE_ATTRIBUTE_ARCHIVE
    Creation Time:       2008-09-12 20:27:17 (UTC)
    Access Time:         2008-09-12 20:27:17 (UTC)
    Write Time:          2008-09-12 20:27:17 (UTC)
    Target Size:         0 bytes
  {S_2.3 - LinkInfo}
    {S_2.3.1 - LinkInfo - VolumeID}
      Drive Type:        DRIVE_FIXED
      Drive Serial No:   307A8A81
      Volume Label:      [EMPTY]
      Local Base Path:   C:\test\a.txt
  {S_2.4 - StringData}
    {S_2.4 - StringData - RELATIVE_PATH}
      Relative Path:     .\a.txt
    {S_2.4 - StringData - WORKING_DIR}
      Working Dir:       C:\test
  {S_2.5 - ExtraData}
    {S_2.5.10 - ExtraData - TrackerDataBlock}
      MachineID:         chris-xps
      Droid1:            {94C77840-FA47-46C7-B356-5C2DC6B6D115}
      Droid2:            {7BCD46EC-7F22-11DD-9499-00137216874A}
        UUID Sequence:     153
        UUID Time:         2008-09-10 10:23:17 (UTC)
        UUID Node (MAC):   00:13:72:16:87:4A

ملاحظة: القسم أعلاه بعنوان '{OPERATING SYSTEM (stat) DATA}' سيكون له تواريخ مختلفة حيث تعتمد على تواريخ تثبيتك ووصولك لذلك الملف الارتباطي على نظامك الخاص. أما البيانات المضمنة فستكون هي نفسها.

يمكن الحصول على ناتج أكثر شمولاً (بما في ذلك أختام زمنية أكثر دقة) بحذف الخيار '-s'.

يمكن الحصول على أكبر قدر من التفاصيل حول ملف ارتباط باستخدام الخيار '-i' الذي سيطبع أيضاً تفاصيل معروفة عن أي كائنات idlist. هذا الخيار غير متوافق مع الخيار '-s'.

يمكن تحليل جميع ملفات الارتباط في دليل (مجلد) بمجرد تمرير اسم الدليل:

root@kitploit:~
lifer ./src/Test/WinXP

(للإيجاز لم يتم عرض الناتج).

يمكن إنشاء ناتج أكثر فائدة لعدد من ملفات الارتباط عن طريق إرسال الناتج كقائمة مفصولة بعلامات جدولة (أو فواصل) إلى ملف يمكن استيراده لاحقاً إلى جدول بيانات للتحليل في وقت فراغك. يمكن تحقيق ذلك كما يلي:

root@kitploit:~
lifer -o tsv ./src/Test/WinXP > WinXP.tsv

أو

root@kitploit:~
lifer -so tsv ./src/Test/WinXP > WinXP.tsv

لحصول على ملف تم حذف بعض البيانات الزائدة وغير المثيرة للاهتمام منه.

تحذير بشأن الناتج المفصول بفواصل!!

قد تحتوي السلاسل النصية داخل ملفات الارتباط أحياناً على فواصل. نظراً لأن هذا يتعارض مع محدد الحقل، فقد تم استبدال أي فواصل داخل السلاسل بفواصل منقوطة (أي استبدال ',' بـ ';'). هذا صحيح فقط لخيار '-o csv' وليس للخيار الافتراضي '-o txt' أو خيارات '-o tsv' و '-o xml'.

التثبيت من الإصدارات

قم بزيارة صفحة الإصدارات واختر الملف التنفيذي المناسب لجهازك من أحدث إصدار وقم بتنزيله. أعد تسمية الملف التنفيذي إلى 'lifer' (أو 'lifer.exe' لويندوز). تأكد من أن لديه السمات الصحيحة ليعمل كملف تنفيذي، ثم ضعه في مجلد يحتوي على ملفات الارتباط التي تريد فحصها أو أضف موقعه إلى متغير PATH الخاص بك وستكون جاهزاً للعمل.

التثبيت من المصدر

أول شيء يجب فعله هو التأكد من تثبيت git على جهازك/جهازك المحمول؛ في نافذة سطر أوامر، انتقل إلى الدليل الجذر المطلوب لمشروعك وأصدر الأمر:

root@kitploit:~
git clone https://github.com/Paul-Tew/lifer.git

سيتم إنشاء دليل جديد باسم 'lifer'.

التثبيت على لينكس (ومنصات يُونكس الأخرى)

(قد يعمل هذا لتثبيتات ماك ولكن ليس لدي المال الكافي لاختباره بالتأكيد...) نظراً لأن هذه الأداة أساسية جداً، فإن التبعيات ضئيلة، تأكد من تثبيت مترجم 'gcc' ومكتبات التطوير الخاصة بـ 'libc'، هذا كل شيء. ابدأ نافذة طرفية وانتقل إلى الدليل ./lifer/src. أصدر الأمر:

root@kitploit:~
gcc -Wall ./lifer.c ./liblife/liblife.c ./libbin2hex/libbin2hex.c -o lifer

بشرط عدم ظهور أي تحذيرات أو أخطاء، يجب أن يكون لديك الآن ملف تنفيذي 'lifer' في الدليل، قد ترغب في التحقق من ذلك بإصدار الأمر:

root@kitploit:~
ls -la

إذا كان كل شيء على ما يرام، يمكنك اختبار أن lifer يعمل عن طريق تجربته على الملف المحدد في وثيقة مايكروسوفت والذي قمت بتضمينه كجزء من مستودع git الذي قمت باستنساخه ويجب أن يكون موجوداً في الدليل ./Test/. يمكنك القيام بذلك بإصدار الأمر:

root@kitploit:~
./lifer ./Test/Test.lnk

يمكنك أيضاً اختبار أن lifer يعمل على مجموعة من ملفات الارتباط الموجودة في دليل بإصدار الأمر:

root@kitploit:~
./lifer ./Test/WinXP/

قم بتثبيت الأداة على نظام التشغيل بإصدار الأمر:

root@kitploit:~
sudo install ./lifer /usr/bin/

هذا سيمكنك من استخدام lifer في أي مكان على نظامك دون تحديد بادئة الدليل (مثلاً lifer ./Test/Test.lnk بدلاً من ./lifer ./Test/Test.lnk)

التثبيت على ويندوز

يأتي مشروع lifer على github مع حل مشروع Visual Studio 2017، لذا فإن أسهل طريقة لإنشاء ملف تنفيذي لويندوز هي تثبيت Visual Studio 2017 أولاً. هناك إصدار مجاني (يُعرف بإصدار 'community') متاح هنا. بعد تثبيت Visual Studio:

  • انقر بزر الفأرة الأيسر على File->Open->Project/Solution وانتقل إلى ملف lifer.sln لتحميل الحل في Visual Studio.
  • على شريط الأدوات القياسي، قم بتعيين خيارات تكوين الحل بما يناسب جهازك وتفضيلاتك (على سبيل المثال، أستخدم: 'x64' و 'Debug')
  • قم ببناء الحل من قائمة 'Build' أو ببساطة استخدم مجموعة المفاتيح: Ctrl+Shift+B
  • بشرط عدم وجود أخطاء، يجب أن يكون لديك ملف تنفيذي 'lifer.exe' في المجلد الفرعي المناسب لمشروعك.
  • في هذه المرحلة، عادةً ما أفتح نافذة Powershell وأنتقل إلى المجلد الذي يحتوي على الملف التنفيذي، والذي أقوم به بإصدار الأمر:
root@kitploit:~
cd "F:\\lifer\src\x64\Debug\"
  • ثم أقوم باختبار الملف التنفيذي باستخدام الأمر:
root@kitploit:~
.\lifer.exe ..\..\Test\Test1.lnk

من الممكن إنشاء lifer في ويندوز دون تثبيت Visual Studio ولكنك ستظل بحاجة إلى تنزيل وتثبيت أدوات بناء Visual C++ المتاحة هنا بمجرد التثبيت، يمكن بناء lifer في الدليل ./src/ بإصدار الأمر:

root@kitploit:~
CL lifer.c .\liblife\liblife.c .\Win\dirent.c .\Win\getopt.c .\libbin2hex\libbin2hex.c

شكر وتقدير

كانت 'lifer' في الأصل أداة خاصة بلينكس/GNU فقط، لم تكن محمولة حقاً إلى ويندوز حتى وجدت حلولاً للعقبات الرئيسية المتمثلة في التنقل في الدليل وتحليل خيارات سطر الأوامر بنفس الطريقة التي يقوم بها GNU. لهذا، أنا ممتن بشدة للمشروعين التاليين:

  1. dirent Kevlin Henney
  2. getopt Ludvik Jerabek

تفسير الناتج

يُشجع المستخدمون على قراءة الورقة البحثية قبل إسناد أي معنى للنتائج. لا ينبغي إسناد أي نتائج إلى هذه الأداة دون فهم كامل لما يمثله الناتج؛ وهذا ينطبق بشكل خاص على مسائل الوقائع المقررة في محكمة قانونية. في مثل هذه الحالات، يقع على عاتق المستخدم فهم كلتا الوثيقتين المذكورتين بشكل كامل بالإضافة إلى فهم شامل لكيفية تعامل ويندوز وأنظمة التشغيل الأخرى مع إنشاء ونقل وحذف هذه الملفات. كما أن المعرفة العملية بكيفية قيام 'lifer' بتفسير وعرض البيانات مطلوبة أيضاً (وهذا يتطلب قراءة وفهم الكود).

إخلاء مسؤولية غير رسمي

أنا مجرد مبرمج علم نفسه بنفسه، لذلك لا شك أن هناك الكثير من الأخطاء و 'المفاجآت' في الكود. لهذا، لا أقدم أي وعود على الإطلاق بأن هذه الأداة لن تضر نظامك. لقد حاولت جاهداً ألا أعطل جهازك، ولكن الطريق إلى الجحيم مفروش بالنوايا الحسنة...

إخلاء مسؤولية رسمي

هذه المادة مُقدمة "كما هي" دون أي ضمان من أي نوع، سواء كان صريحاً أو ضمنياً، بما في ذلك على سبيل المثال لا الحصر، الضمانات الضمنية لقابلية التسويق، الملاءمة لغرض معين، أو عدم الانتهاك. بعض السلطات القضائية لا تسمح باستبعاد الضمانات الضمنية، لذلك قد لا ينطبق عليك الاستبعاد أعلاه. في أي حال، لن أكون مسؤولاً تجاه أي طرف عن أي أضرار مباشرة أو غير مباشرة أو خاصة أو تبعية أخرى ناتجة عن أي استخدام لهذه المادة بما في ذلك، على سبيل المثال لا الحصر، أي أرباح مفقودة، انقطاع الأعمال، فقدان البرامج أو البيانات الأخرى على نظام معالجة المعلومات الخاص بك أو غير ذلك، حتى لو تم إبلاغنا صراحةً بإمكانية حدوث مثل هذه الأضرار.

Paul Tew - مارس 2020

تنزيل الأداة