-
Notifications
You must be signed in to change notification settings - Fork 6.5k
[automated]: crowdin sync #8956
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,82 @@ | ||
| --- | ||
| title: الإبلاغ الأمني | ||
| layout: about | ||
| --- | ||
|
|
||
| # الإبلاغ الأمني | ||
|
|
||
| لمزيد من التفاصيل حول سياسات الأمان، راجع [هذه الصفحة](https://github.com/nodejs/node/security/policy). | ||
|
|
||
| ## الإبلاغ عن ثغرة أمنية في Node.js | ||
|
|
||
| أبلغ عن الثغرات الأمنية في Node.js عبر [HackerOne](https://hackerone.com/nodejs). | ||
|
|
||
| > **ملاحظة:** إرسال بلاغ عبر HackerOne يتطلب حدًا أدنى من | ||
| > [Signal](https://docs.hackerone.com/en/articles/8369891-signal-impact) score قدره **1.0**. | ||
| > إذا كانت درجة Signal لديك أقل من هذا الحد، فتواصل بدلًا من ذلك مباشرة مع مشرفي إصدارات الأمان في Node.js | ||
| > عبر [OpenJS Foundation Slack](https://slack-invite.openjsf.org/). | ||
|
|
||
| عادةً يتم تأكيد استلام البلاغ خلال 5 أيام، وستتلقى ردًا أكثر تفصيلًا خلال 10 أيام | ||
| يوضح الخطوات التالية في التعامل مع ما أرسلته. قد تمتد هذه المدة عندما يكون متطوعو فرز البلاغات (triage) | ||
| في إجازة، خاصة في نهاية العام. | ||
|
|
||
| بعد الرد الأولي على البلاغ، سيحرص فريق الأمان على إبقائك على اطلاع بالتقدم نحو الإصلاح | ||
| والإعلان الكامل، وقد يطلب منك معلومات إضافية أو توضيحات حول المشكلة التي أبلغت عنها. | ||
|
|
||
| ### برنامَج مكافآت الثغرات الأمنية في Node.js | ||
|
|
||
| يشارك مشروع Node.js في برنامج مكافآت الثغرات (bug bounty program) رسمي مخصص للباحثين الأمنيين والإفصاح العام المسؤول. | ||
| تتم إدارة البرنامج عبر منصة HackerOne. راجع [https://hackerone.com/nodejs](https://hackerone.com/nodejs) | ||
| لمزيد من التفاصيل. | ||
|
|
||
| ## الإبلاغ عن bug في module من جهة خارجية | ||
|
|
||
| يجب الإبلاغ عن الثغرات الأمنية في third party modules إلى المسؤولين عن صيانتها (maintainers). | ||
|
|
||
| ## سياسة الإفصاح | ||
|
|
||
| هذه هي سياسة الإفصاح الأمني الخاصة بـ Node.js: | ||
|
|
||
| - يتم استلام البلاغ الأمني وتعيين مسؤول أساسي للتعامل معه. ينسق هذا الشخص عملية الإصلاح والإصدار. | ||
| يتم التحقق من المشكلة على جميع إصدارات Node.js المدعومة. بعد تأكيدها، يتم تحديد قائمة بكل الإصدارات المتأثرة. | ||
| تتم مراجعة الكود للبحث عن أي مشاكل مشابهة محتملة. ثم تُجهز الإصلاحات لكل الإصدارات المدعومة. | ||
| لا تُرسل هذه الإصلاحات إلى المستودع العام (public repository) مباشرة، بل تبقى محليًا إلى حين الإعلان. | ||
|
|
||
| - يتم اختيار تاريخ حظر نشر (embargo) مقترح لهذه الثغرة، ويتم طلب CVE | ||
| (Common Vulnerabilities and Exposures (CVE®)) لها. | ||
|
|
||
| - في تاريخ حظر النشر (embargo)، تُرسل نسخة من الإعلان إلى القائمة البريدية الأمنية (security mailing list) الخاصة بـ Node.js. | ||
| تُدفع التغييرات إلى المستودع العام (public repository)، ويتم نشر builds جديدة على nodejs.org. | ||
| خلال 6 ساعات من إشعار القائمة البريدية (mailing list)، تُنشر نسخة من التنبيه الأمني (advisory) على مدونة Node.js. | ||
|
|
||
| - عادةً يتم تحديد تاريخ حظر النشر (embargo) بعد 72 ساعة من وقت إصدار CVE. لكن قد يختلف ذلك حسب خطورة bug | ||
| أو صعوبة تطبيق الإصلاح. | ||
|
|
||
| - قد تستغرق هذه العملية بعض الوقت، خاصة عندما نحتاج إلى التنسيق مع المسؤولين عن صيانة مشاريع أخرى (maintainers). | ||
| سنحاول التعامل مع bug بأسرع ما يمكن، لكن يجب علينا اتباع عملية الإصدار (release process) الموضحة أعلاه | ||
| لضمان التعامل مع الإفصاح بطريقة متسقة. | ||
|
|
||
| ## تلقي تحديثات الأمان | ||
|
|
||
| سيتم توزيع إشعارات الأمان عبر الطرق التالية: | ||
|
|
||
| - [Google Group](https://groups.google.com/group/nodejs-sec) | ||
| - [مدونة Node.js](/blog) | ||
|
|
||
| ## التعليقات على هذه السياسة | ||
|
|
||
| إذا كانت لديك اقتراحات لتحسين هذه العملية، فيرجى زيارة مستودع | ||
| [nodejs/security-wg](https://github.com/nodejs/security-wg). | ||
|
|
||
| ## أفضل ممارسات OpenSSF | ||
|
|
||
| <a href="https://bestpractices.coreinfrastructure.org/projects/29" style={{ display: 'inline-flex' }}> | ||
|
|
||
| <img alt="شارة OpenSSF" src="https://bestpractices.coreinfrastructure.org/projects/29/badge" style={{ display: 'inline' }} /> | ||
| </a> | ||
|
|
||
| تعد شارة [Best Practices](https://github.com/coreinfrastructure/best-practices-badge) من Open Source Security Foundation (OpenSSF) | ||
| طريقة تتيح لمشاريع Free/Libre and Open Source Software (FLOSS) إظهار أنها تتبع أفضل الممارسات. | ||
| يمكن للمشاريع أن تمنح نفسها هذا التصديق طوعًا من خلال توضيح كيفية اتباعها لكل ممارسة. | ||
| ويستطيع مستخدمو الشارة تقييم مشاريع FLOSS التي تتبع أفضل الممارسات بسرعة، مما يزيد احتمال إنتاجها | ||
| لبرمجيات آمنة وذات جودة أعلى. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| # لدى asdf خطوات تثبيت تختلف حسب نظام التشغيل. | ||
| # راجع الوثائق الرسمية: https://asdf-vm.com/guide/getting-started.html. | ||
| # يستخدم هذا المثال صيغة أوامر asdf v0.16+. | ||
|
|
||
| # تثبيت إضافة Node.js: | ||
| asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git | ||
|
|
||
| # تحميل و تثبيت Node.js: | ||
| asdf install nodejs ${props.release.version} | ||
|
|
||
| # تعيين Node.js كإصدار افتراضي عام: | ||
| asdf set --home nodejs ${props.release.version} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # تحميل و تثبيت Homebrew | ||
| curl -o- https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh | bash | ||
|
|
||
| # تحميل و تثبيت Node.js: | ||
| brew install node@${props.release.major} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # تحميل و تثبيت Chocolatey: | ||
| powershell -c "irm https://community.chocolatey.org/install.ps1|iex" | ||
|
|
||
| # تحميل و تثبيت Node.js: | ||
| choco install nodejs --version="${props.release.version}" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| # تحميل Corepack: | ||
| npm install -g corepack |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # لدى Docker تعليمات تثبيت محددة لكل نظام تشغيل. | ||
| # يرجى الرجوع إلى الوثائق الرسمية في https://docker.com/get-started/ | ||
|
|
||
| # جلب صورة Node.js الخاصة بـ Docker: | ||
| docker pull node:${props.release.major}-slim | ||
|
|
||
| # أنشئ حاوية Node.js ثم فتح جلسة Shell داخلها | ||
| docker run -it --rm --entrypoint sh node:${props.release.major}-slim |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # تحميل و تثبيت fnm: | ||
| ${props.os === 'WIN' ? | ||
| 'winget install Schniz.fnm' : | ||
| 'curl -o- https://fnm.vercel.app/install | bash' | ||
| { | ||
|
|
||
| # تحميل و تثبيت Node.js: | ||
| fnm install ${props.release.major} | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,5 @@ | ||
| تحميل وتثبيت n و Node.js: | ||
| # تحميل وتثبيت n و Node.js: | ||
| curl -fsSL https://raw.githubusercontent.com/mklement0/n-install/stable/bin/n-install | bash -s ${props.release.major} | ||
|
|
||
| # يتم تثبيت Node.js تلقائيًا أثناء عملية n-install، لكن يمكنك أيضًا تثبيته يدويًا: | ||
| # n install ${props.release.major} | ||
| # n تحميل ${props.release.major} | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Arabic n manual install wrongMedium Severity The optional manual install comment was changed from Reviewed by Cursor Bugbot for commit 3029a40. Configure here.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. that right |
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| # توثيق اصدار Node.js: | ||
| node -v # يجب أن يطبع "${props.release.versionWithPrefix}". |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| # تحميل و تثبيت nvm: | ||
| curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.5/install.sh | bash | ||
|
|
||
| # بدلاً من إعادة تشغيل shell | ||
| \. "$HOME/.nvm/nvm.sh" | ||
|
|
||
| # تحميل و تثبيت Node.js: | ||
| nvm install ${props.release.major} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| # تحميل و تثبيت pnpm: | ||
| corepack enable yarn | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Arabic pnpm enables yarnMedium Severity The Arabic pnpm snippet runs Reviewed by Cursor Bugbot for commit 3c4f454. Configure here.
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. right |
||
|
|
||
| # توثيق اصدار pnpm: | ||
| pnpm -v | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| # asdfにはOSごとにそれぞれのインストール方法があります。 | ||
| # 詳しくは https://asdf-vm.com/guide/getting-started.html にある公式ドキュメントを参照してください。 | ||
| # このスニペットではasdf v0.16以降のコマンド構文を使用します。 | ||
|
|
||
| # Node.jsプラグインをインストールする: | ||
| asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git | ||
|
|
||
| # Node.jsをダウンロードしてインストールする: | ||
| asdf install nodejs ${props.release.version} | ||
|
|
||
| # グローバルのデフォルトとしてNode.jsを設定する: | ||
| asdf set --home nodejs ${props.release.version} |


There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Arabic fnm snippet brace typo
High Severity
The Arabic
fnminstall snippet closes the${props.os === 'WIN' ? … : …}block with{instead of}, so the combined download instructions no longer form valid template syntax whenReleaseCodeBoxparses snippets for Arabic users choosing fnm.Reviewed by Cursor Bugbot for commit 3c4f454. Configure here.