
🐸 تعرف على أي شيء. يتيح لك pyWhat بسهولة التعرف على عناوين البريد الإلكتروني وعناوين IP والمزيد. قم بتغذيته بملف .pcap أو بعض النصوص وسيخبرك ما هو! 🧙♀️
➡️ Discord ⬅️
أسهل طريقة لتحديد أي شيء
pip3 install pywhat && pywhat --help
What ما هذا؟
تخيل هذا: تصادف نصًا غامضًا 🧙♂️ 0x52908400098527886E0F7030069857D2E4169EE7 أو dQw4w9WgXcQ وتتساءل ما هو. ماذا تفعل؟
حسنًا، مع what كل ما عليك فعله هو السؤال what "0x52908400098527886E0F7030069857D2E4169EE7" وسيخبرك what!
مهمة what هي تحديد ما هو الشيء. سواء كان ملفًا أو نصًا! أو حتى الـ hex لملف! ماذا عن النص داخل الملفات؟ لدينا ذلك أيضًا! what تعاودي، سيحدد كل شيء في النص وأكثر!
$ pip3 install pywhat
أو
# installs optional dependencies that may improve the speed
$ pip3 install pywhat[optimize]
$ brew install pywhat
أو لعشاق MacPorts:
$ sudo port install pywhat

تصادف قطعة برمجية خبيثة جديدة تُدعى WantToCry. تتذكر Wannacry وتتذكر أنه تم إيقافه لأن باحثًا وجد مفتاح إيقاف في الكود.
عندما تم تسجيل نطاق، مضمّن بشكل صلب في Wannacry، كان الفيروس يتوقف.
تستخدم What لتحديد جميع النطاقات في البرمجية الخبيثة، وتستخدم واجهة برمجة تطبيقات مسجّل النطاقات لتسجيل جميع النطاقات.

لنفترض أن لديك ملف .pcap من هجوم شبكي. يمكن لـ What تحديد هذا والعثور بسرعة على:
مع what، يمكنك تحديد الأشياء المهمة في ملف pcap في ثوانٍ، لا دقائق.
يمكنك استخدام PyWhat للبحث عن الأشياء التي ستجلب لك المال عبر مكافآت الثغرات مثل:
شغّل PyWhat مع:
pywhat --include "Bug Bounty" TEXT
للقيام بذلك.
إليك بعض الأمثلة 👇
# Download all repositories
GHUSER=CHANGEME; curl "https://api.github.com/users/$GHUSER/repos?per_page=1000" | grep -o 'git@[^"]*' | xargs -L1 git clone
# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
# Recursively download all web pages of a site
wget -r -np -k https://skerritt.blog
# Will print when it finds things.
# Loops over all files in current directory.
find . -type f -execdir pywhat --include 'Bug Bounty' {} \;
ملاحظة: ندعم مرشحات أكثر من مجرد مكافآت الثغرات! شغّل pywhat --tags
في أي وقت يكون لديك ملف وتريد العثور على بيانات منظمة مفيدة فيه، What هو لك.
أو إذا صادفت قطعة نص ولا تعرف ما هي، سيخبرك What.
فتح الملفات يمكنك تمرير مسار ملف عبر what 'this/is/a/file/path'. What ذكي بما يكفي ليكتشف أنه ملف!
ماذا عن مجلد كامل؟ يمكن لـ What التعامل مع ذلك أيضًا! سيبحث بشكل تعاودي عن الملفات ويخرج كل ما تحتاجه!
مدخلات متعددة يمكنك تمرير عدة ملفات أو مجلدات أو نصوص دفعة واحدة، مثل what file1 file2 this/is/a/directory 'some text' أو find . -name '*.log' -exec what {} +. يُظهر What ملف كل تطابق، والتطابقات في النص تكون تحت text، و--json يعيد كل شيء في كائن JSON واحد.
Unicode يمكن أن تكون الملفات والنصوص المُمرَّرة إلى What بترميز UTF-8، أو UTF-16 أو UTF-32 مع علامة ترتيب البايتات، مثل ملفات النص "Unicode" التي يحفظها Windows. يبحث What أيضًا في سلاسل UTF-16 في الملفات الثنائية (مثل strings -el)، وهي الطريقة التي تخزّن بها برامج Windows معظم نصوصها. تُطبع الأحرف التي لا تستطيع طرفيتك عرضها كتسلسلات هروب مثل \u20bf بدلًا من الانهيار.
أحيانًا، تهتم فقط برؤية الأشياء المتعلقة بـ AWS. أو مكافآت الثغرات، أو العملات المشفرة!
يمكنك تصفية المخرجات باستخدام what --rarity 0.2:0.8 --include Identifiers,URL https://skerritt.blog. استخدم what --help للحصول على مزيد من المعلومات.
بشكل افتراضي، يُظهر what فقط التطابقات ذات الندرة 0.1 أو أكثر، لأن التطابقات ذات الندرة الأقل غالبًا ما تكون إيجابيات كاذبة. على سبيل المثال، معرّف فيديو YouTube بمفرده، مثل dQw4w9WgXcQ، يمكن أن يكون أي 11 حرفًا عشوائيًا، لذا what dQw4w9WgXcQ لا يجد شيئًا، لكن what --rarity 0: dQw4w9WgXcQ يُظهره. روابط YouTube، مثل https://youtu.be/dQw4w9WgXcQ أو youtube.com/watch?v=dQw4w9WgXcQ&t=42s، تُعرض بشكل افتراضي.
لرؤية جميع المرشحات، شغّل pywhat --tags! يمكنك أيضًا دمجها، على سبيل المثال لرؤية جميع محافظ العملات المشفرة ناقص Ripple يمكنك فعل:
pywhat --include "Cryptocurrency Wallet" --exclude "Ripple Wallet" 1KFHE7w8BhaENAswwryaoccDb6qcT6DbYY
تعمل أسماء التعبيرات النمطية مثل الوسوم، والعديد من التعبيرات النمطية لها أسماء بديلة أقصر أيضًا، مثل BTC Wallet لـ Bitcoin (₿) Wallet Address أو ARN لـ Amazon Resource Name (ARN). لرؤية محافظ Bitcoin وEthereum فقط:
pywhat --include "BTC Wallet,ETH Wallet" TEXT
شغّل pywhat --names لرؤية اسم كل تعبير نمطي مع أسمائه البديلة.
الترتيب يمكنك ترتيب المخرجات باستخدام what -k rarity --reverse TEXT. استخدم what --help للحصول على مزيد من المعلومات.
أفضل التطابقات وجدت الكثير؟ what --top 10 TEXT يُظهر فقط أفضل 10 تطابقات محتملة، الأكثر احتمالًا أولًا، وwhat --top 5% TEXT يُظهر أفضل 5% منها احتمالًا. بالنسبة لمجلد أو عدة مدخلات، هذه هي التطابقات الأكثر احتمالًا بينها جميعًا. التطابقات الأكثر احتمالًا لديها أعلى ندرة، لكن أجزاء كلمة أو تطابق أطول، والتي يجدها الوضع بلا حدود، أقل احتمالًا: what --top 1 0x52908400098527886E0F7030069857D2E4169EE7 يُظهر عنوان Ethereum، وليس أرقام البطاقة والضمان الاجتماعي فيه. what -k likely TEXT يُظهر جميع التطابقات بهذا الترتيب. في واجهة برمجة التطبيقات، pywhat.ranking.top_matches(identified, 10) يحتفظ بأفضل 10 تطابقات محتملة مما يعيده Identifier.identify()، ومفتاح "Fragment" للتطابق يوضح ما إذا كان جزءًا.
التصدير يمكنك التصدير إلى json باستخدام what --json ويمكن إرسال النتائج مباشرة إلى ملف باستخدام what --json > file.json. يُطبع JSON على سطر واحد، لذا يمكن تمريره إلى برامج أخرى أيضًا، مثل what --json TEXT | jq.