برنامه وب – در مقابل پیشگیری از تزریق SQL – اجرای SQL از راه دور

Background

ما می دانیم که SQL Injection شاید امروزه موضوع شایع ترین سایت های وب است. استراتژی های کاهش خطرات به خوبی شناخته شده است. اما آیا این تنها تقویت یک معماری نرم افزاری ناقص / ناکارآمد است؟

برای من، کار با MS SQL Server که دارای مجوز محدود به کاربران بود، به این معنی بود که مجوز باید به لایه کاربرد وب منتقل شود تا هزینه مقرون به صرفه باشد. البته، من همچنین می خواستم یک API RESTful ارائه دهم که SQL Server به طور مستقیم در RDBMS قرار نگرفته است.

در تجربه من، یک رابط RESTful ایجاد می کند که دیدگاه هایی را دریافت می کند که پرس و جو و پارامتر را تعریف می کنند. اینها به SQL تبدیل می شوند که بر روی RDBMS اجرا می شود. بنابراین API های وب به این ترتیب پروتکل سریال سازی غیر مستقیم برای SQL نیست؟ (به جز ملاحظات منطق کسب و کار در حال حاضر)

بنابراین، اگر ما کل مشکل را معکوس کنیم؟ اگر بجای قرار دادن پارامترهای دقت پارامترهای پرس و جو / نمایش های استاتیک، ما به مشتری اجازه دادیم SQL کامل را به سرور منتقل کنیم؟


سوال

فرض کنید که یک چارچوب ایمن توسعه داده شده برای اجرای بیرونی SQL:

  • امن ترین
  • نسبتا آسان و مفید برای ساخت و یا پیدا کردن / آیکون ابزار کتابخانه
  • سازنده برای نرم افزار های وب است که آسان تر برای ساخت (بیشتر از نقطه StackOverflow)

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


جزئیات بیشتر و ایده هایی که چگونه می تواند کار کند:

  • طرف سرور می تواند رشته بیانیه SQL را به طور کامل به یک مدل حافظه پرس و جو تجزیه و تحلیل کند، امکان بررسی مجدد سازمانی را فراهم می کند، و نیز درونگرایی پارامتر مناسب، در نتیجه حذف SQL پلاگین تزریق
  • رابط وب مستقیم به RDBMS که قبلا تجزیه کننده SQL، کاربران، نقش ها و امنیت موجودیت را شامل می شود (اگر نه بصورت مستقیم از طریق ردیف ها یا از طریق نمایش ها).
  • یک مدل قابل خواندن از ماشین SQL که آسان تر است تجزیه شده توسط middleware.
  • بحث از این واقعیت است که SQL مانند JSON، فرمت سریال سازی است. این انسان قابل خواندن است. SQL توضیح خاصی را تعریف می کند که RDBMS باید انجام دهد (به روش خودش)

تأثیر تایید نظریه من

اگر این درست باشد، مشتریان ضخیم وب با لایه کسب و کار خود فعال خواهند شد. بنابراین چنین طبقه ای از انواع سیستم های نرم افزاری بیشتر توجه، در نظر گرفتن و توسعه را دریافت می کند. من معتقدم که این نوع سیستم ها انتخاب خوبی برای پروژه های کوچک برای توسعه سریع و نمونه سازی است.

آیا ممکن است ISP در پیشگیری از هرزنامه مفید باشد؟

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

من موفق نشدم با ثبت کننده یا میزبان صحبت کنم تا دامنه را حذف کنم. آیا هر چیزی که یک ISP می تواند انجام دهد برای جلوگیری از چنین ایمیل هایی از یک دامنه مخرب شناخته شده است؟

پیشگیری از حمله – چالش مهندسی سطح نظامی

من سعی می کنم یک فرستنده رادیوی ویژه نظامی ایجاد کنم.
اساسا، جریان:

  1. یک solider یک پیام برای ارسال (حدود 10 بار در روز) دریافت می کند. هر پیام 1024 بیت دقیق است.

  2. او این پیام را به رادیو وارد می کند و معتبر خواهد شد درست وارد شده است.

  3. رادیو این پیام را به صورت تکراری ارسال می کند.

این بسیار مهم است که فرستنده هک کردن، زیرا بسیار مهم است در زمان اضطراری.

بنابراین، کمک من از شما می خواهم، چگونه برای پیشبرد مرحله 2 بدون خطر ابتلا به آلوده.
اگر داده ها را با استفاده از DOK انتقال دهم، ممکن است هک شده باشد.
اگر کاربر را در 1024 بیت ایجاد کنم، آن را امن خواهد بود اما خسته کننده خواهد بود.

هر ایده ای؟ (بودجه نامحدود)

(مهم است که بگوییم داده های منتقل شده راز نیست)

با تشکر از هر گونه کمک شما می توانید عرضه!
دنی

پیشگیری از حمله – چگونه برای محافظت از پشته سایه؟

متوجه شدم که بسیاری از مکانیسم های حفاظت در امنیت رایانه برای اطمینان از یکپارچگی کنترل جریان استفاده می شود، یکی از این مکانیسم ها پشته سایه است:

اصل بسیار آسان است که یکپارچه آدرس بازگشت توابع را تضمین کند. در واقع آدرس بازگشتی که در پشته قرار دارد با آن که در پشته سایه قرار دارد مقایسه می شود.

چندین کاربرد پشته سایه وجود دارد، یکی از آنها شامل تغییر مقدمه و پرولوگ تابع (برای نوشتن آن در پشته سایه و بار از آن برای چک).

این سوال این است: اگر توابع در فضای کاربری مجاز به نوشتن در پشته سایه باشند، چگونه می توان مانع از حمله مهاجم به نوشتن / تغییر پشته سایه