| SYD-MDWE(1) | General Commands Manual | SYD-MDWE(1) |
نام (NAME)
syd-mdwe - بررسی حفاظت حافظه نوشتن یا اجرا (MDWE) در syd
خلاصه دستور (SYNOPSIS)
syd-mdwe [-hms] {command [args...]}
توضیحات (DESCRIPTION)
ابزار syd-mdwe یک برنامه را تحت حفاظتهای حافظه نوشتن یا اجرا (MDWE یا Memory-Deny-Write-Execute) اجرا میکند. این حفاظتها را میتوان با استفاده از prctl(2) و seccomp(2) اعمال کرد؛ این حفاظتها با آنچه Syd بهطور پیشفرض اعمال میکند یکسان هستند.
گزینهها (OPTIONS)
| -h | نمایش راهنما. |
| -m | فعالسازی حفاظتهای MDWE با استفاده از prctl(2) PR_SET_MDWE (پیشفرض: هر دو). |
| -s | فعالسازی حفاظتهای MDWE با استفاده از seccomp(2) (پیشفرض: هر دو). |
مثالها (EXAMPLES)
با اجرای یکبار pax-test بهصورت مستقل و یکبار تحت syd-mdwe(1) روی هسته نسخه 6.8، تفاوتهای زیر حاصل میشود:
| PaX Testcase | standalone | mdwe |
| Executable anonymous mapping | Killed | Killed |
| Executable bss | Killed | Killed |
| Executable data | Killed | Killed |
| Executable heap | Killed | Killed |
| Executable stack | Killed | Killed |
| Executable shared library bss | Killed | Killed |
| Executable shared library data | Killed | Killed |
| Executable anonymous mapping (mprotect) | Vulnerable | Killed |
| Executable bss (mprotect) | Vulnerable | Killed |
| Executable data (mprotect) | Vulnerable | Killed |
| Executable heap (mprotect) | Vulnerable | Killed |
| Executable stack (mprotect) | Vulnerable | Killed |
| Executable shared library bss (mprotect) | Vulnerable | Killed |
| Executable shared library data (mprotect): | Vulnerable | Killed |
| Writable text segments | Vulnerable | Killed |
این آزمون با paxtest-0.9.15 انجام شده است:
PaXtest - Copyright(c) 2003-2016 by Peter Busser <peter@adamantix.org> and Brad Spengler <spender@grsecurity.net> Released under the GNU Public Licence version 2 or later Mode: 1 Blackhat Kernel: Linux syd 6.8.0-syd-13213-g70293240c5ce #9 SMP PREEMPT_DYNAMIC Mon Mar 25 04:40:47 CET 2024 x86_64 GNU/Linux
وضعیت خروج (EXIT STATUS)
در صورت خروج عادی، syd-mdwe با همان کد فرآیند فرزند خارج میشود. در صورت خاتمه غیرعادی، کد خروج روی 128 به علاوه شماره سیگنال تنظیم میشود. در صورتی که اجرای فرآیند فرزند با شکست مواجه شود، syd-mdwe با شماره errno(3) خارج میشود.
هشدارها (CAVEATS)
بهطور پیشفرض، خطای prctl(2) هنگام تنظیم PR_SET_MDWE(2const) مهلک نیست. برای مهلک کردن این خطا از گزینه -m استفاده کنید. این ابزار روی معماریهای MIPS که در آنها لینوکس نیازمند پشته قابل اجرا است، کار نمیکند.
همچنین ببینید (SEE ALSO)
syd(1), syd(2), syd(5), syd-lock(1), syd-ofd(1), syd-pds(1), syd-ring(1), syd-sec(1), syd-tsc(1), seccomp(2), prctl(2), PR_SET_MDWE(2const)
صفحه خانگی syd: https://sydbox.exherbo.org
نویسندگان (AUTHORS)
نگهداری شده توسط Ali Polatel. سورسهای بهروز را میتوان در https://gitlab.exherbo.org/sydbox/sydbox.git و روی Radicle در rad:z38HCnbmcDegA2BMxuPaPRPMdp6wF یافت. اشکالات/وصلهها را میتوان به https://gitlab.exherbo.org/groups/sydbox/-/issues ارسال کرد. گفتگو در #sydbox در Libera Chat یا در #sydbox:mailstation.de در Matrix.
| 2026-09-01 |