
SMBeagle - أداة تدقيق مشاركة الملفات.
____ __ _____ _ __
/ __ \__ ______ / /__/ ___/___ _______ _______(_) /___ __
/ /_/ / / / / __ \/ //_/\__ \/ _ \/ ___/ / / / ___/ / __/ / / /
/ ____/ /_/ / / / / ,< ___/ / __/ /__/ /_/ / / / / /_/ /_/ /
/_/ \__,_/_/ /_/_/|_|/____/\___/\___/\__,_/_/ /_/\__/\__, /
PRESENTS /____/
SMBeagle هي أداة تدقيق لمشاركات الملفات (SMB) تعمل عبر المنصات، تبحث عن جميع الملفات التي يمكنها رؤيتها في الشبكة وتُبلغ إذا كان الملف يمكن قراءته و/أو الكتابة عليه. يتم بث جميع هذه النتائج إما إلى ملف CSV أو إلى مضيف Elasticsearch، أو كليهما! 🚀
عند التشغيل على ويندوز، دون تقديم بيانات اعتماد، ستستخدم SMBeagle واجهات برمجة تطبيقات Win32 لتحقيق أقصى سرعة ومصادقة متكاملة.
عند التشغيل على لينكس، أو عند تقديم بيانات اعتماد، نستخدم فحص الملفات عبر المنصات من خلال SMBLibrary
كانت SMBeagle حتى الإصدار v3 موقعة رقميًا، لكن الإصدار v4 يضيف ميزات هجومية إضافية. على وجه التحديد، ستبحث الآن عن الملفات الجذابة وتسترجعها. رائع لاختبارات الاختراق، لكنه ليس شيئًا نريد توقيعه رقميًا!
إذا كنت تريد الإصدار الأصلي، بدون ميزات جلب الملفات، استخدم الإصدار v3 الموقع رقميًا.
لها حالتا استخدام رائعتان:
غالبًا ما تحتوي الشركات بجميع أحجامها على مشاركات ملفات ذات أذونات ملفات سيئة.
الشركات الكبيرة لديها مشاركات واسعة على خوادم الملفات وليس من النادر العثور على بيانات حساسة بأذونات مهيأة بشكل خاطئ.
الشركات الصغيرة غالبًا ما تمتلك NAS صغير في زاوية المكتب بدون أي قيود على الإطلاق!
تزحف SMBeagle عبر هذه المشاركات وتدرج جميع الملفات التي يمكنها قراءتها والكتابة عليها. إذا كان يمكنها قراءتها، فيمكن للبرامج الضارة الفدية قراءتها أيضًا.
يمكن لـ SMBeagle تزويد مختبرى الاختراق بالطرق الأقل وضوحًا لرفع الامتيازات والتحرك أفقيًا.
من خلال الإخراج المباشر إلى Elasticsearch، يمكن للمختبرين العثور بسرعة على النصوص القابلة للقراءة والملفات التنفيذية القابلة للكتابة.
العثور على هجمات حفرة المياه وكلمات المرور غير المحمية لم يكن بهذه السهولة من قبل! 🐱👤
لجعل الأمر أكثر سهولة، أضفنا العلامة -g التي ستقوم الآن بجلب الملفات إذا كانت تبدو مثيرة للاهتمام!
ما الذي يبدو مثيرًا للاهتمام؟ حسنًا، بشكل افتراضي نبحث عن النصوص البرمجية وأسماء الملفات التي تحتوي على كلمات مثل "password" فيها.
... يمكنك توفير تعبيراتك النمطية الخاصة باستخدام العلامة --file-pattern.
يرجى مراجعة ملف Kibana للحصول على تعليمات مفصلة حول تثبيت واستخدام لوحات تحكم Kibana التي توفر مرئيات إدارية وتجعل التنقل في البيانات أسهل.
docker pull punksecurity/smbeagleالمعلمة الإجبارية الوحيدة هي تعيين مخرج، والذي يجب أن يكون إما عنوان IP لمضيف Elasticsearch أو ملف CSV.
نقطة بداية جيدة هي تمكين الوضع السريع والإخراج إلى CSV، ولكن قد يصبح ملف CSV ضخمًا اعتمادًا على عدد الملفات التي يعثر عليها.
./SMBeagle.exe -c out.csv -f
فحص المضيفين والشبكات العامة المكتشفة معطل افتراضيًا لأن SMBeagle يكتشف الشبكات من خلال netstat والتي تتضمن جميع الاتصالات الحالية مثل جلسات المتصفح وما إلى ذلك.
لفحص شبكة عامة، قم بتعريفها يدويًا بشيء مثل -n 1.0.0.1/32 أو -n 1.0.0.0/24
توفر Punk Security صورة Docker خاصة بنظام لينكس لـ SMBeagle.
للحصول على النتائج، ستحتاج إلى تحميل مجلد داخل الحاوية وإخبار SMBeagle بحفظ مخرجاته في هذا المسار (أو استخدام Elasticsearch).
مثال جيد للمبتدئين:
docker run -v "$(pwd)/output:/tmp/output" punksecurity/smbeagle -c /tmp/output/results.csv -n 10.10.10.0/24
لاحظ أن اكتشاف الشبكة معطل عند التشغيل في Docker، لذا تأكد من تمرير النطاقات التي ترغب في مسحها باستخدام المفتاح -n، أو المضيفين باستخدام المفتاح -h.
USAGE:
Output to a CSV file:
SMBeagle -c out.csv
Output to elasticsearch (Preferred):
SMBeagle -e 127.0.0.1
Output to elasticsearch and CSV:
SMBeagle -c out.csv -e 127.0.0.1
Disable network discovery and provide manual networks:
SMBeagle -D -e 127.0.0.1 -n 192.168.12.0./23 192.168.15.0/24
Do not enumerate ACLs (FASTER):
SMBeagle -A -e 127.0.0.1
-c, --csv-file (Group: output) Output results to a CSV
file by providing filepath
-e, --elasticsearch-host (Group: output) Output results to
elasticsearch by providing elasticsearch
hostname (default port is 9200 , but can be
overridden)
-a, --aggression (Default: 6) Vary scanning speed in a range
between 1 and 10. 10 being fastest [No
decimals]
--elasticsearch-port (Default: 9200) Define the elasticsearch
custom port if required
-f, --fast Enumerate only one files permissions per
directory
-l, --scan-local-shares Scan the local shares on this machine
-D, --disable-network-discovery Disable network discovery
-n, --network Manually add network to scan (multiple
accepted)
-N, --exclude-network Exclude a network from scanning (multiple
accepted)
-h, --host Manually add host to scan
-H, --exclude-host Exclude a host from scanning
-q, --quiet Disable unneccessary output
-S, --exclude-share Do not scan shares with this name (multiple
accepted)
-s, --share Only scan shares with this name (multiple
accepted)
--file-pattern Only fetch files matching these regexes
patterns
-g, --grab-files Grab files and store them locally
--loot (Default: loot) Path to store grabbed files
-E, --exclude-hidden-shares Exclude shares ending in $
-v, --verbose Give more output
-m, --max-network-cidr-size (Default: 20) Maximum network size to scan
for SMB Hosts
-A, --dont-enumerate-acls (Default: false) Skip enumeration of file
ACLs
-d, --domain (Default: ) Domain for connecting to SMB
-u, --username Username for connecting to SMB - mandatory
on linux
-p, --password Password for connecting to SMB - mandatory
on linux
--help Display this help screen.
--version Display version information.
تقوم SMBeagle بالكثير من العمل، مقسم إلى وحدات متماسكة بشكل فضفاض تتسلم من بعضها البعض. هذا يبقي التصميم بسيطًا ويسمح لنا بتوسيع كل وحدة بسهولة.
باختصار، تقوم بما يلي:
