security-1

17 پرسش امنیتی هنگام خرید نرم‌افزار مدیریت فرآیند کسب و کار (BPMS)

آیا سیستم BPMS شما امن می‌باشد؟ آیا مطمئن هستید که تمامی کانال‌های ارتباطی به ابزار شما امن است؟ اگر از این سوالات احساس نگرانی کردید حتما برای انتخاب محصولتان با یک کارشناس امنیت مشورت کنید. نکات امنیتی زیر را بخوانید و در مرحله خرید نرم‌افزار BPMS این موارد را ارزیابی نمایید.

1. کنترل دسترسی – احراز هویت و مجوز دسترسی

شاید مهم ترین جنبه امنیتی BPM، کنترل دسترسی باشد. داشتن فقط نام کاربری و کلمه عبور صرفا برای فراهم کردن احراز هویت کافی نیست. شما نیاز به روش‌های مجوز دسترسی مناسب نیز دارید. بسیاری از سیستم‌ها مجوز دسترسی را از سرویس LDAP استفاده می‌کنند که دسترسی کاربران به اطلاعات و منابع را مشخص می‌کند. اگر کاربری بتواند به چگونگی دسترسی به گروه LDAP پی ببرد، می‌تواند به همه چیز دسترسی داشته باشد، سرور BPM باید برخی راه‌های از پیش تعریف شده برای دسترسی کاربر مستر را داشته باشد.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • چگونه کاربر مستر به منابع و اطلاعات دسترسی دارد؟
  • آیا زمانی که به یک شخص دسترسی کاربر مستر داده می‌شود ما با خبر می‌شویم؟
  • آیا برای احراز هویت نیازمند سیستم third party هستیم؟
  • آیا امکان احراز هویت دو مرحله‌ای با رمز یکبار مصرف وجود دارد؟
  • آیا سیاست‌های امنیتی به قدر کافی کاربران متخلف را محدود می‌کند؟

2. رمزگذاری کلمه عبور

کلمه‌ی عبور باید بصورت رمزگذاری شده ذخیره شود. این شامل کلمه‌های عبور کاربران، کلمه عبور پایگاه داده و سیستم‌های خارجی می‌باشد. سیستم‌هایی که از hash کردن مانند MD5 برای رمزگذاری استفاده می‌کنند خیلی بهتر و امن‌تر از سیستم‌هایی هستند که بدون رمزگذاری کلمه عبور را ذخیره می‌کنند. مراقب باشید، برخی از توسعه‌دهندگان سایت به اشتباه کلمه عبور را در فایل متنی ذخیره می‌کنند و گاهی در کلاس (با استفاده از جاوا) ذخیره می‌کنند که با تجزیه و decompiling به راحتی می‌توان به کلمه‌ی عبور دسترسی پیدا کرد.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • چه کلمات عبوری را ذخیره می‌کنیم؟
  • آیا کلمه عبور رمز شده می‌باشد؟
  • آیا در سیستم توزیع شده، دسترسی به فایل سیستم و پایگاه داده به آسانی امکان‌پذیر می‌باشد؟
  • آیا سیاستی مبنی بر بررسی کد هر خط از برنامه وجود دارد؟
  • تغییر رمز عبور با چه الگوریتمی قابل انجام است؟

3امنیت در سطح فیلد

فرآیندها اغلب شامل داده‌ها و فیلدها می‌باشند. آیا شما مطمئن هستید در سطح فیلد امنیت وجود دارد؟ و یادآوری کنم که اغلب سیستم‌های BPM شامل این دسترسی نمی‌باشند! شما امنیت را در سطح فرم فراهم می‌کنید ولی در سطح فیلد به صورت جداگانه امنیت وجود ندارد. و هکر به راحتی می‌تواند به فیلدهای اطلاعاتی دسترسی داشته باشد و فیلدهای حساس را مانند قیمت، نرخ و … را تغییر دهد.

سوال‌های زیر را از کارشناس امنیت سیستم بپرسید:

  • آیا امنیت در سطح فیلد وجود دارد؟
  • از کجا می‌توان فهمید، چه کسی به چه فیلدی دسترسی دارد؟
  • آیا فقط توسعه‌دهندگان فیلد را در فرم پنهان کنند، کافیست یا اینکه دسترسی به فیلد، در سرور هم باید در نظر گرفته شود؟
  • چه فیلد و داده‌ای محرمانه می‌باشد؟

4.ارسال ایمیل

فرض کنید یک کاربر ایمیلی شامل یک لینک به فرم فرآیندی دریافت می‌کند. ایمیل را به سمت دیگری در سازمان ارسال می‌کند. شخص گیرنده‌ی ایمیل بر روی لینک کلیک می‌کند و فرم را باز می کند! او می‌تواند رد یا تایید کند. نقطه مرگ و خطر همین جاست! صادقانه فکر کنیم که چند نفر از شما این سناریو را تست کرده‌اید؟ بسیاری از شرکت‌ها این ویژگی را می خواهند، تهدید امنیتی را شناسایی نکرده‌اند.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • لینک به فرم‌های فرآیندی چگونه پیاده‌سازی شده است؟
  • چه اطلاعاتی در لینک قابل دسترسی می‌باشد؟ آیا اطلاعات رمز شده است؟
  • آیا سیستم قبل از باز کردن فرم، مجوز دسترسی را چک می‌کند؟
  • آیا ارسال ایمیل امنیت را به خطر می‌اندازد؟

5. یکپارچگی سیستم

شما فقط سیستم بسیاریکپارچه در مورد ابزار BPM می‌سازید. آیا مطمئن هستید ارتباط بین داده‌هایی که در جریان می‌باشند هم یکپارچه می‌باشد؟ و امنیت در هر کنترلی پیاده‌سازی شده است؟ اگر سیستم‌ها درخواست کلمه عبور کردند، آیا مطمئن هستید که رمز شده انتقال می‌یابد؟ بسیاری از ما فکر میکنیم اینترانت محیط ارتباطی امنی می‌باشد، در صورتیکه واقعا اینطور نیست. با تکنولوژی wi-fi و مشابه، یک هکر باهوش می‌تواند در پارکینگ شما به شبکه‌ی شما دسترسی داشته باشد!

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • سیستم‌های ما در ارتباط با چه سیستم‌هایی هستند؟
  • چگونه اعتبار تعیین می‌شود؟
  • آیا این سیستم‌ها در مورد احراز هویت، چالش دارند؟
  • آیا به جای IP از نام دامین استفاده می‌کنید؟ اگر پاسخ مثبت است چه مقدار از هک کردن DNS Server خود جلوگیری کرده‌اید؟

6. دسترسی ریشه‌ای

تازه واردها این مشکل را دارند که دسترسی admin و ریشه‌ای به همه چیز و همه منابع را به کار می‌برند. سرور برنامه و پایگاه داده با امتیاز ریشه‌ای اجرا می‌شود. این جمله به چه معناست؟ اگر برنامه‌ی شما با دسترسی ریشه‌ای اجرا شود، برخی می‌توانند کدهایی را با دسترسی admin اجرا کنند و فایل‌های سیستمی را از بین ببرند. همیشه برنامه را با حداقل امتیاز برای اجرای برنامه، تنظیم کنید. همیشه حمله‌ها از درون شبکه رخ می‌دهند!

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • پلت فرم برنامه اجرایی چیست؟
  • چه سرویس‌های اجرا می‌شوند؟
  • چه تعداد از کاربران با سطح دسترسی admin می‌باشند؟
  • آیا در زمان استقرار برنامه، می‌توان کدهایی را اجرا کرد؟

7. اطلاعات هم‌تیمی

این آیتم مربوط به کسب و کار می باشد. آیا کاربران می‌توانند کار هم تیمی خود را ببینند؟ آیا تیم‌ها می‌توانند کارهای دیگر تیم‌ها را ببینند؟ اگر جواب مثبت هست، جزئیات سطح دسترسی چیست؟

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • آیا دیگران به کارهای من دسترسی دارند؟
  • چه سطح از اطلاعات در دسترس می‌باشد؟
  • چه کارهایی در سطح اشخاص می‌باشد و چه سطح از دسترسی گروهی می‌باشد؟

8. امنیت سرور

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

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • برای اجرای فرآیندها از چه نوع سروری استفاده می‌کنید؟
  • آیا شما نام و کلمه عبور پیش فرض را تغییر داده‌اید؟
  • آیا پورت مدیریت سرور برنامه مسدود شده است؟
  • آیا دسترسی مستقیم، یا از طریق API و یا از طریق Web service به سرور برنامه، مسدود شده است؟

9. ورود یکپارچه (SSO)

بیشتر سازمان‌ها برای ورود به برنامه از سیستم “ورود یکپارچه” استفاده می‌کنند. سازمان‌های بالغ عمل احراز هویت ابزار BPM خود را با مکانیزم sso، یکپارچه می‌کنند و کمتر از احراز هویت windows استفاده می‌کنند. گاهی کلمه عبور توسط ارائه‌دهنده‌ی sso به اشتراک قرار می‌گیرد. در نهایت شما می‌توانید در صورتیکه sso درست پیاده‌سازی نشده باشد، بدون احراز هویت وارد سیستم شوید.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • کدام استاندارد sso پیاده‌سازی شده است؟
  • آیا سیستم به نام کاربری و کلمه عبور windows وابسته می‌باشد؟
  • چه سیستم‌های از sso استفاده می‌کنند؟ آیا این سیستم به قدر کافی امن می‌باشند؟
  • آیا می‌توان یک token سیستم دیگر را در ابزار BPM استفاده کرد؟

10. پورت‌ها و دسترسی خارج از سیستم

DMZ برای امن کردن دسترسی به منابع شبکه‌ی داخلی به کار برده می‌شود. اگر ابزار BPM  شما توسط فروشنده و مشتری خارج از شبکه‌ی شما در دسترس می‌باشد، شما در معرض خطر امنیتی بزرگی می‌باشید. شما باید مطمئن باشید که پورت‌های مناسب مسدود شده است و شبکه‌ی اختصاصی مجازی (VPN) و شیوه‌های امنیتی مشابه در محل فراهم شده است. در غیر اینصورت مستعد حملات امنیتی می‌باشید.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • کدام پورت در سرور شما باز می‌باشد؟(و چرا)
  • چه اطلاعات و منابعی خارج از سرور و سیستم در دسترس می‌باشد؟
  • کاربران خارجی به طور مستقیم به سیستم دسترسی دارند یا از طریق پروکسی؟
  • آیا کاربر خارجی به API و یا Web Service ی دسترسی دارد؟
  • آیا برای دسترسی خارجی پروتکل HTTP، پیاده سازی شده است؟

همچنین استفاده از firewall مناسب هم پیشنهاد می‌شود. گاهی سیستم شما در معرض حمله‌ی انکار سرویس (Dos) برای فلج کردن سیستم، خواهد بود.

11. کنترل دسترسی به رابط برنامه‌نویسی نرم‌افزار

دسترسی به API بسیار اساسی و حائز اهمیت می‌باشد. بسیاری از ابزارهای BPM سرویس دسترسی به سرور از طریق API را ارائه می‌دهند و شما می‌توانید به آسانی به سرور دسترسی داشته باشید. احراز هویت و مجوز دسترسی هر دو قبل از فراخوانی API باید در نظر گرفته شوند و از این طریق دسترسی به مهمان یا کاربر غیر مجاز غیرفعال می‌باشد.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • چه سرویس‌هایی در قالب API، ابزار BPM ارائه می‌دهد؟
  • آیا فراخوانی API، لازم به احراز هویت دارد؟
  • بعد از اینکه هویت کاربر شناسایی شد، چه آسیب‌هایی می‌تواند به سیستم برساند؟
  • آیا ما روش‌های کنترل دسترسی و احراز هویت در محل را داریم؟

12. سرویس‌های تحت وب

همانند API، دسترسی به سرویس‌های تحت وب هم از اهمیت ویژه‌ای برخوردار می‌باشد. بزرگترین مشکل اجرا شدن وب‌سرویس در پورت HTTP است. اگر کاربر از طریق مرورگر به پرتال BPM دسترسی دارد، به وب‌سرویس هم دسترسی دارد. و اگر شما این دسترسی را کنترل نکنید، با مشکل بزرگی روبه‌رو هستید. و مشکل دیگر وب‌سرویس استاندارد بودن آن می باشد. افراد می‌توانند وب‌سرویس شما را شناسایی کنند.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • آیا ابزار از وب سرویس استفاده می‌کند؟
  • تا چه عمقی شخصی می‌تواند سرویس را شناسایی کند و به چگونگی منطق سرویس پی ببرد؟
  • آیا وب سرویس شامل احراز هویت و مجوز دسترسی می‌باشد؟
  • آیا سرویس‌های خاص و حساس کاربر در معرض دسترسی می‌باشد؟

13رویداد اعلان

بسیاری از ابزارهای BPM خدمات انتشار پیام را ارائه می‌دهند. وقتی وضعیت از فرآیند تغییر می‌کند پیامی را منتشر می‌کنند. و سیستم با انتشار این پیام اطلاعاتی را بین فرآِیندهای دیگر به اشتراک می‌گذارد. به ظاهر این رویه امن می‌باشد ولی سیستم‌های احراز هویت نشده هم می‌تواند به آسانی به تمامی اطلاعات دسترسی داشته باشد حتی به اطلاعات محرمانه.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • آیا سیستم هر نوع اطلاعاتی را منتشر می‌کند؟
  • تا چه اندازه دسترسی به اطلاعات منتشر شده امن می‌باشد؟
  • چه اطلاعاتی در پیام منتشرمی‌شود؟
  • چگونه می‌توان سرویس انتشار را غیرفعال کرد؟

14. امنیت داده و گزارش

در حالی‌که ممکن است تمامی اقدامات برای تضمین امنیت فرم‌ها و فرآیندها انجام شده باشد، ولی داده‌های درونی و دسترسی به گزارشات هم نیاز به امنیت دارند. چه کسی به داده‌ها از طریق ابزار توسعه SQL دسترسی دارد. اغلب مدیران به این دسته از گزارشات دسترسی دارند ولی باید مطمئن شوید که مدیران فقط به گزارش‌های مربوط به بخش خود دسترسی داشته باشند نه به تمامی داده‌ها.

سوال‌های زیر را از کارشناس امنیت بپرسید:

  • چگونه دسترسی به داده‌ها کنترل می‌شود؟ آیا اشخاص به داده‌های درونی دسترسی دارند؟
  • آیا سطح دسترسی به جدول‌ها پیاده‌سازی شده است؟
  • آیا حقوق دسترسی به گزارشات ابزار BPM برای افراد تعریف شده است؟
  • آیا میتوان از طریق API داده‌های تاریخچه را واکشی کرد؟

15. امنیت و سمت توسعه‌گر

شما نیاز دارید که امنیت را نظارت و کنترل کنید. اگر شما با منافع عمومی یا پول سروکار دارید نیاز دارید که مطمئن شوید دسترسی منطقی و درست می‌باشد یا خیر. قانون ساربنز-آکسلی (Sarbanes Oxley) به توسعه‌دهندگان سیستم اجازه‌ی دسترسی به سیستم تولید را نمی‌دهد. و دسترسی به داده تولید نیاز به مستند شدن و مجوز لحظه به لحظه دارد.

سوال‌های زیر را از کارشناس امنیت بپرسید:

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

16. امنیت فیزیکی

این مورد بدیهی می‌باشد اما حتی برای BPM هم مهم می‌باشد. آیا سرورهای به حد کافی امن می‌باشند؟ اگر سیستم در زیرساختارهای ابری اجرا می‌شود، این شانس وجود دارد که سرورهای شما در محل شما نباشد. چگونه مرکز داده‌ها را امن کرده‌اید؟ آیا یک مخرب شبکه می‌تواند به کسب و کار شما آسیب برساند؟

پرسش‌هایی که از کارشناس امنیت بپرسید:

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

17. برنامه‌های پس از خسارت

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

برخی سوال‌هایی که از کارشناس امنیت بپرسید:

  • آیا ما طرح و برنامه‌ریزی در مورد بازگرداندن داده‌ها (Backup) و غلبه بر خسارت (Failover) داریم؟
  • در چه بازه‌ی زمانی می‌توانیم کسب و کار خسارت دیده شده را به وضعیت مناسب و اجرایی بازگردانیم؟
  • چه اقداماتی برای بازگرداندن داده‌های گم شده، اطلاعات خسارت دیده و کلمات رمز عبور به سرقت رفته لازم است ؟
  • آیا افراد سازمان در این شرایط می‌توانند به راحتی کار خود را ادامه دهند؟
  • آیا اشتباهات رخ داده در جایی ثبت می‌شود؟

ترجمه و گردآوری: تیم مدیریت محتوای رایورز