تأیید اعتبار – آیا یک شخص ثالث برای ورود به سیستم میتواند من را منصرف کند؟ (آیا فیس بوک می تواند سوالات خود را به سرریز پشته زیر نام من بفرستد؟)

بله، آنها می توانند

پاسخ ساده: شما به نوعی به تأمینکننده OAuth خود، معمولا از طریق نام کاربری و رمز عبور، هویتی را تایید میکنید. مدیر بد می تواند مدارک ارسال شده را ذخیره کند و فقط از آنها استفاده کند. این حمله به نحوه اجرا در پشت صحنه بستگی ندارد.

به طور کلی، گذرواژه شما برای تأیید هویت ارائه دهنده برای احراز هویت به سرویس های شخص ثالث به طور کلی استفاده نمی شود، بدان معنی است که هویت سازنده شما در واقع کلید های ورود شما را دارد (و شما همه آنها را نداشته باشید.

شما می توانید از طرح هایی استفاده کنید که رمز عبور شما را در فرآیند احراز هویت ذخیره می کند بدون ذخیره سازی آن پس از آن رمزگذاری نشده است، اما در عمل من چنین برنامه ای را نمی دانم

کنترل دسترسی – آیا یک نقطه مرجع مستقیم ناامن مستقیم به یک فایل ساده یا صفحه می تواند؟

تعريف مرجع ابرداده مستقيم ناامن (IDOR) از OWASP (تاکيد معدن)

اشاره مستقيم به ايمني مستقيم ناامن هنگامي رخ مي دهد که برنامه فراهم شود
  دسترسی مستقیم به اشیاء بر اساس ورودی کاربر ارائه شده. به عنوان یک نتیجه از
  این مهاجمان آسیب پذیر می توانند اجازه و دسترسی را از بین ببرند
  منابع در سیستم به طور مستقیم، به عنوان مثال سوابق پایگاه داده و یا
  فایل ها

لینک های ناخواسته مستقیم Object اجازه می دهد تا حمله ها را دور بزنند
  مجوز و دسترسی به منابع به طور مستقیم با تغییر مقدار از
  پارامتر مورد استفاده به طور مستقیم اشاره به یک شی
.

درک من از مورد کلی این است که اگر شما در برنامه خود که در نظر گرفته شده است حفاظت شده است و شما می توانید به طور مستقیم توسط دسترسی به اشاره به آن را در URL از شما به عنوان مشکل * .

به معنای واقعی کلمه تمام نمونه هایی از IDOR من دیده ام، همیشه از شمارش در URL (به عنوان در پاراگراف دوم از من نقل قول): یکی از دسترسی به http://example.com؟id=10 (correlicty) است، اما با دستکاری id ، او دسترسی به http: // example.com؟id=1033 که او نباید مجبور باشد.

برای من این تنها یک نمونه خاص از این آسیب پذیری است. من هم فکر می کنم (و در اینجا سؤال من است) آدرس هایی مانند

 http://example.com/menu1/menu2/topsecret/file.pdf

یا

 http://example.com/menu1/menu2/topsecret/

نیز مسائل مربوط به نکات مستقیم اشیاء ناامن (هنگام دسترسی غیرمنتظره) هستند.

آیا در فهم من درست است؟


* چرا این فقط یک "هیچ ACL" نیست، پس از آن؟ (به عنوان مثال A10 "کنترل دسترسی شکسته") از آنجا که ممکن است این صفحه هنگامی محافظت شود که شما سعی در دسترسی به آن "راه طبیعی" (به عنوان مثال از طریق منوهای که برای شما قابل مشاهده است فقط زمانی که شما دارای حقوق مناسب است)

کنترل دسترسی – فایل های chmodding با محیط امنیتی SELinux / ACL

خوب، بنابراین من یک دسته از bash و پایتون اسکریپت که من نوشته شده است، همه فقط در یک پوشه بزرگ chilling کردن. خوب، در واقع زیر شاخه های جداگانه ای وجود دارد، اما همه آنها در این پوشه اصلی توزیع شده اند.
بنابراین برای بحث، ساختار پوشه به نظر می رسد چیزی شبیه به این:

 پیدا کنید. -type d 
.
./scripts/sh
./scripts/sh/a
./scripts/sh/b
./scripts/sh/c
./scripts/py
./scripts/py/x
./scripts/py/y
./scripts/py/z

هرگز، من سعی کردم کل مجموعه اسکریپت های اجرایی را تمام کنم، همه در یک با افت پیدا کردم و chmod :

 پیدا کردم. -type f -exec chmod + x {} + 

معمولا، این همه چیزی است که من باید انجام دهم، اما متوجه شدم که + x کمی هنوز ناپدید شده است. تمام مجوزهای آنها همچنان به نظر می رسد:

 ls -l ./scripts/py/z
-rw-rw----. 1 ریشه 1015 801 7 مه 12:00 script_name.py 

ظاهرا. . شخصیت (پس از پرچم مجوز)، نوعی از زمینه امنیتی SELinux، با یک لیست کنترل دسترسی یا مشابه آن را نشان می دهد. من با getfacl را بررسی کردم، واقعا نمی دانستم چی به چی بپوشم اول یک دایرکتوری است، دوم یکی از فایل های اسکریپت است:

 getfacl -acp ./scripts/py/z &&
getfacl -acp ./scripts/py/z/*
user::rwx
گروه :: rwx
دیگر :: - x

کاربر :: rw-
گروه :: rw-
دیگر :: --- 

من با گزینه های زیر setfacl زیر را امتحان کردم، فایده ای نداشت:

 setfacl --help | grep 'remove' 
 -x، --remove = acl حذف نوشته ها از ACL (ها) فایل (ها)
  -X، --remove-file = فایل خواندن ACL برای حذف از فایل
  -b، --remove-all حذف تمام ورودی های ACL پیشرفته
  -k، --remove-default حذف ACL پیش فرض 

بنابراین، در وضعیتی که root مجوز کاربر احترام گذاشته شده است، و sudo استفاده نیست بپرسید؛ چگونه می توانم کنترل دسترسی فایل های شخصی خود را به دست آورم؟