
إطار عمل لبرامج PowerShell و PoshSec النصية لإدارة الشبكة والأمان والصيانة.
لكي تعمل النصوص البرمجية والوحدات النمطية، يرجى الرجوع إلى التوثيق أدناه.
إطار PoshSec Framework (أو PSF) هو أداة واجهة مستخدم رسومية لتشغيل نصوص PowerShell النصية، والوحدات النمطية، والأوامر cmdlets. يعرض PSF أجزاء من واجهته لـ PowerShell داخل جلسات PSession الفردية. يتم تنفيذ كل نص أو أمر يتم تشغيله في خيط منفصل، مما يسمح لك بتشغيل multiple scripts في وقت واحد.
تم تطوير إطار PoshSec Framework بشكل أساسي بواسطة Ben Ten (Ben0xA). المشروع مفتوح للمطورين الآخرين الذين يرغبون في المساهمة فيه أيضًا. هذا المشروع مرتبط مباشرة بمشروع PoshSec. مشروع PoshSec يتم صيانته بواسطة Matt Johnson (mwjcomputing) ويتم تطويره بنشاط بواسطة عدة مطورين. هؤلاء المطورون مذكورون أدناه.
تم تصميم إطار PoshSec Framework ليعمل مع PowerShell 3.0 ويعمل مع PowerShell 2.0. بينما سيعمل PSF مع الإصدارات الأقدم من PowerShell، يتطلب PSF .NET 4.5 الذي يأتي بشكل قياسي مع PowerShell 3.0. هذه هي المتطلبات الأساسية الموصى بها لاستخدام PSF:
يرجى ملاحظة أنه على الرغم من أنه غير مطلوب لـ 'معظم' النصوص أن يكون PowerShell مثبتًا على النظام المستهدف، إلا أنه يجب تثبيته وتكوينه بشكل صحيح على نفس الجهاز الذي تم تثبيت إطار PoshSec Framework عليه.
إذا كانت هذه هي المرة الأولى التي تستخدم فيها نصوص PowerShell، أو الدوال، أو الأوامر cmdlets، فهناك بعض الأمور الإدارية التي يجب القيام بها أولاً. يجب أن تحدث هذه الأمور بغض النظر عما إذا كنت تستخدم إطار PoshSec Framework أو إذا قمت باستدعاء النص، أو الدالة، أو الأمر cmdlet بنفسك. ملاحظة: 'أداة الاستخدام الأول' المدمجة داخل PSF ستقوم بكل هذه الخطوات تلقائيًا نيابة عنك. ومع ذلك، فإن هذه الخطوات موضحة أدناه بالتفصيل من أجل معرفتك أو إذا كنت ترغب في القيام بهذه الخطوات بنفسك بدلاً من ذلك.
ستقوم أداة الاستخدام الأول في إطار PoshSec Framework بالخطوات المذكورة أعلاه تلقائيًا. ستقوم أيضًا بما يلي:
يرجى ملاحظة: يمكنك اختيار الخطوات التي تريد تنفيذها في أداة الاستخدام الأول أو ببساطة الضغط على الزر الذي يقول "لا تفعل شيئًا، سأفعلها بنفسي".
لدى PowerShell افتراضيًا سياسة ExecutionPolicy، التي تحدد أي النصوص يمكن تشغيلها، على "None". هذا يمنع تنفيذ النصوص غير الموقعة على نظامك. عندما تستخدم نصوصًا من مشاريع أخرى، مثل PoshSec، ستحتاج إلى تعيين هذه السياسة إلى "RemoteSigned". سياسة RemoteSigned مصممة للنصوص التي تطورها أنت أو التي يطورها الآخرون. يجب تشغيل هذا الأمر تحت صلاحيات المسؤول المحلي.
ps C:\> Set-ExecutionPolicy RemoteSigned -Force
مع إصدار Windows 7 وأنظمة التشغيل الأحدث من Microsoft، قدموا "حظر" على أي ملف يتم تنزيله من الإنترنت. سيؤدي ذلك إلى ظهور User Access Control (UAC) عند تنفيذ أو تشغيل ذلك الملف الذي تم تنزيله. عندما تستخدم نصوصًا، أو دوال، أو أوامر cmdlets من مواقع بعيدة، ستحتاج إلى إزالة علامة "الحظر" هذه قبل أن تتمكن من تشغيلها داخل PowerShell أو PSF.
يقوم الأمر cmdlet Unblock-File بإزالة هذه العلامة. أبسط طريقة لإلغاء حظر ملفات متعددة في دليل هي عن طريق التكرار عبر الدليل وتمرير كل ملف إلى الأمر cmdlet Unblock-File.
ps C:\> Get-ChildItem | ForEach-Object { Unblock-File $_.Name }
يستخدم إطار PoshSec Framework الأمر cmdlet Get-Help من داخل PowerShell. يتم استخدامه لمعرفة ما إذا كان أي أمر أو نص يحتوي على معاملات. قبل أن تتمكن من استخدام Get-Help، يجب تحديثه مرة واحدة على الأقل. للقيام بذلك، استخدم الأمر cmdlet Update-Help. ملاحظة: تحتاج إلى اتصال إنترنت نشط لتحديث المساعدة.
ps C:\> Update-Help -Force
=======
ملاحظة: مطلوب على الأقل PowerShell 3.0 في هذا الوقت.
تحتاج إلى التأكد من تشغيل "Update-Help" في PowerShell Command Shell عند التحميل لأول مرة. هذا مطلوب لكي يعمل الإطار بشكل صحيح!
افتح ملف poshsecframework.sln في Visual Studio 2012+ وقم ببناء المشروع (F7). سيؤدي ذلك إلى إنشاء مجلد bin\Release في {your github repodirectory}\poshsecframework\poshsecframework\bin\Release.
انسخ مجلدي "\Modules" و "\Scripts" من مجلد "\Scripts and Modules" إلى الدليل bin\Release.
على سبيل المثال:
C:\github\poshsecframework\poshsecframework\bin\Release\Modules\
C:\github\poshsecframework\poshsecframework\bin\Release\Scripts\
يحتوي مجلد الملف الثنائي على poshsecframework.zip.
قم بفك ضغط الملف المضغوط إلى دليل من اختيارك وقم فقط بتشغيل poshsecframework.exe.
لا تحتاج إلى نقل مجلد Scripts\ أو Modules.
انسخ مجلدي Modules و Scripts من مجلد "Scripts and Modules" إلى دليل التثبيت.
C:\Program Files\PoshSecFramework\Modules\
C:\Program Files\PoshSecFramework\Scripts\
ستحتاج إلى إصدار الأمر التالي في وحدة تحكم PowerShell تعمل كمسؤول إذا لم تقم مطلقًا بتشغيل نصوص على نظامك من قبل.
Set-ExecutionPolicy RemoteSigned
ثم اكتب "Y" عند الطلب.
بالنسبة لبعض الأنظمة، قد تحتاج إلى "إلغاء حظر" الملفات. نحن نعمل على تضمين ذلك مباشرة في PSF، لكن في الوقت الحالي تحتاج فقط إلى كتابة الأمر التالي في وحدة تحكم PowerShell:
Get-ChildItem -recurse <path to poshsecframework> | Unblock-File
مثال:
Get-ChildItem -recurse "C:\github\poshsecframework\poshsecframework" | Unblock-File
~أو~
Get-ChildItem -recurse "C:\Program Files\PoshSecFramework\ | Unblock-File"
بدأ هذا المشروع بواسطة Will Steele (@pen_test) و Matt Johnson (@mwjcomputing) وله عدة أهداف:
تم إنشاء إطار PoshSec Framework بواسطة
المطورون "الأساسيون" الحاليون هم:
بالترتيب الأبجدي:
PoshSec هو حول دعم المجتمع، وتمكين المجتمع، وتعزيز الوضع الأمني للمؤسسات.