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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
meg — جلب العديد من المسارات للعديد من المضيفين - دون قتل المضيفين | Kitploit
أدوات/GitHubGitHub/tomnomnom/meg
الاستطلاعجمع المعلوماتأمن الويبزاحف الويب
GitHubtomnomnom/meg

meg

جلب العديد من المسارات للعديد من المضيفين - دون قتل المضيفين

عرض المستودع
1.7k267منذ 4 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

meg

meg هي أداة لجلب الكثير من عناوين URL ولكنها لا تزال 'لطيفة' مع الخوادم.

يمكن استخدامها لجلب العديد من المسارات للعديد من المضيفين؛ حيث تقوم بجلب مسار واحد لجميع المضيفين قبل الانتقال إلى المسار التالي وتكرار ذلك.

تحصل على الكثير من النتائج بسرعة، ولكن لا يتم إغراق أي من المضيفين الفرديين بحركة المرور.

التثبيت

مكتوب بلغة Go ولا يحتوي على تبعيات وقت التشغيل. إذا كان لديك Go 1.9 أو إصدار أحدث مثبت ومكوّن، فيمكنك تثبيت meg باستخدام go install:

root@kitploit:~
▶ go install github.com/tomnomnom/meg@latest

أو قم بتنزيل ملف ثنائي وضعه في مكان ما في $PATH الخاص بك (مثل /usr/bin/).

أخطاء التثبيت

إذا رأيت خطأ مثل هذا، فهذا يعني أن إصدار Go الخاص بك قديم جدًا:

root@kitploit:~
# github.com/tomnomnom/rawhttp
/root/go/src/github.com/tomnomnom/rawhttp/request.go:102: u.Hostname undefined (
type *url.URL has no field or method Hostname)
/root/go/src/github.com/tomnomnom/rawhttp/request.go:103: u.Port undefined (type
 *url.URL has no field or method Port)
 /root/go/src/github.com/tomnomnom/rawhttp/request.go:259: undefined: x509.System
 CertPool

يجب عليك إما تحديث إصدار Go الخاص بك، أو استخدام إصدار ثنائي لمنصتك.

الاستخدام الأساسي

بافتراض وجود ملف مليء بالمسارات:

root@kitploit:~
/robots.txt
/.well-known/security.txt
/package.json
وملف مليء بالمضيفين (مع بروتوكول):
root@kitploit:~
http://example.com
https://example.com
http://example.net

سوف يطلب meg كل مسار لكل مضيف:

root@kitploit:~
▶ meg --verbose paths hosts
out/example.com/45ed6f717d44385c5e9c539b0ad8dc71771780e0 http://example.com/robots.txt (404 Not Found)
out/example.com/61ac5fbb9d3dd054006ae82630b045ba730d8618 https://example.com/robots.txt (404 Not Found)
out/example.net/1432c16b671043271eab84111242b1fe2a28eb98 http://example.net/robots.txt (404 Not Found)
out/example.net/61deaa4fa10a6f601adb74519a900f1f0eca38b7 http://example.net/.well-known/security.txt (404 Not Found)
out/example.com/20bc94a296f17ce7a4e2daa2946d0dc12128b3f1 http://example.com/.well-known/security.txt (404 Not Found)
...

وحفظ المخرجات في دليل يسمى ./out:

root@kitploit:~
▶ head -n 20 ./out/example.com/45ed6f717d44385c5e9c539b0ad8dc71771780e0
http://example.com/robots.txt

> GET /robots.txt HTTP/1.1
> Host: example.com

< HTTP/1.1 404 Not Found
< Expires: Sat, 06 Jan 2018 01:05:38 GMT
< Server: ECS (lga/13A2)
< Accept-Ranges: bytes
< Cache-Control: max-age=604800
< Content-Type: text/*
< Content-Length: 1270
< Date: Sat, 30 Dec 2017 01:05:38 GMT
< Last-Modified: Sun, 24 Dec 2017 06:53:36 GMT
< X-Cache: 404-HIT

<!doctype html>
<html>
<head>

بدون أي وسائط، سوف يقرأ meg المسارات من ملف يسمى ./paths، والمضيفين من ملف يسمى ./hosts. ولن يكون هناك أي مخرجات:

root@kitploit:~
▶ meg
▶

ولكنه سوف يحفظ ملف فهرس إلى ./out/index:

root@kitploit:~
▶ head -n 2 ./out/index
out/example.com/538565d7ab544bc3bec5b2f0296783aaec25e756 http://example.com/package.json (404 Not Found)
out/example.com/20bc94a296f17ce7a4e2daa2946d0dc12128b3f1 http://example.com/.well-known/security.txt (404 Not Found)

يمكنك استخدام ملف الفهرس لمعرفة مكان تخزين الرد، ولكن غالبًا ما يكون من الأسهل العثور على ما تبحث عنه باستخدام grep:

root@kitploit:~
▶ grep -Hnri '< Server:' out/
out/example.com/61ac5fbb9d3dd054006ae82630b045ba730d8618:14:< Server: ECS (lga/13A2)
out/example.com/bd8d9f4c470ffa0e6ec8cfa8ba1c51d62289b6dd:16:< Server: ECS (lga/13A3)

إذا كنت تريد طلب مسار واحد فقط، يمكنك تحديده مباشرة كوسيطة:

root@kitploit:~
▶ meg /admin.php

الاستخدام المفصل

يحاول إخراج المساعدة في meg أن يكون مفيدًا بالفعل:

root@kitploit:~
▶ meg --help
Request many paths for many hosts

Usage:
  meg [options] [path|pathsFile] [hostsFile] [outputDir]

Options:
  -c, --concurrency <val>    Set the concurrency level (defaut: 20)
  -d, --delay <val>          Milliseconds between requests to the same host (default: 5000)
  -H, --header <header>      Send a custom HTTP header
  -r, --rawhttp              Use the rawhttp library for requests (experimental)
  -s, --savestatus <status>  Save only responses with specific status code
  -v, --verbose              Verbose mode
  -X, --method <method>      HTTP method (default: GET)

Defaults:
  pathsFile: ./paths
  hostsFile: ./hosts
  outputDir:  ./out

Paths file format:
  /robots.txt
  /package.json
  /security.txt

Hosts file format:
  http://example.com
  https://example.edu
  https://example.net

Examples:
  meg /robots.txt
  meg -s 200 -X HEAD
  meg -c 30 /
  meg hosts.txt paths.txt output

التزامن

بشكل افتراضي، سيحاول meg إجراء 20 طلبًا متزامنًا. يمكنك تغيير ذلك باستخدام الخيار -c أو --concurrency:

root@kitploit:~
▶ meg --concurrency 5

ليس من اللطيف إبقاء مستوى التزامن أعلى من عدد المضيفين - فقد ينتهي بك الأمر بإرسال الكثير من الطلبات إلى مضيف واحد في وقت واحد.

التأخير

بشكل افتراضي، سينتظر meg 5000 مللي ثانية بين الطلبات إلى نفس المضيف. يمكنك تجاوز ذلك باستخدام الخيار -d أو --delay:

root@kitploit:~
▶ meg --delay 10000

تحذير: قبل تقليل التأخير، تأكد من أن لديك الإذن لإجراء كميات كبيرة من الطلبات إلى المضيفات التي تستهدفها.

إضافة الرؤوس

يمكنك تعيين رؤوس إضافية على الطلبات باستخدام الخيار -H أو --header:

root@kitploit:~
▶ meg --header "Origin: https://evil.com"
▶ grep -h '^>' out/example.com/*
> GET /.well-known/security.txt HTTP/1.1
> Origin: https://evil.com
> Host: example.com
...

HTTP الخام (تجريبي)

إذا كنت تريد إرسال طلبات غير صالحة - على سبيل المثال مع ترميز URL غير صالح - فسيفشل عميل HTTP الخاص بـ Go:

root@kitploit:~
▶ meg /%%0a0afoo:bar
request failed: parse https://example.org/%%0a0afoo:bar: invalid URL escape "%%0"

يمكنك استخدام العلم -r أو --rawhttp لتمكين استخدام مكتبة rawhttp، والتي لا تقوم بأي تحقق تقريبًا على الطلب:

root@kitploit:~
▶ meg --verbose --rawhttp /%%0a0afoo:bar
out/example.com/eac3a4978bfb95992e270c311582e6da4568d83d https://example.com/%%0a0afoo:bar (HTTP/1.1 404 Not Found)

مكتبة rawhttp واستخدامها تجريبي. من بين أمور أخرى، لا تدعم بعد ترميز النقل المجزأ، لذلك قد تلاحظ أطوال أجزاء متخللة مع مخرجاتك إذا استخدمتها.

حفظ رموز حالة معينة فقط

إذا كنت تريد فقط حفظ النتائج التي أعادت رمز حالة معين، يمكنك استخدام الخيار -s أو --savestatus:

root@kitploit:~
▶ meg --savestatus 200 /robots.txt

تحديد الطريقة

يمكنك تحديد طريقة HTTP التي تريد استخدامها باستخدام الخيار -X أو --method:

root@kitploit:~
▶ meg --method TRACE
▶ grep -nri 'TRACE' out/
out/example.com/61ac5fbb9d3dd054006ae82630b045ba730d8618:3:> TRACE /robots.txt HTTP/1.1
out/example.com/bd8d9f4c470ffa0e6ec8cfa8ba1c51d62289b6dd:3:> TRACE /.well-known/security.txt HTTP/1.1
...
تنزيل الأداة