মূল লেখায় যান

অ্যাপে নিরাপত্তার ফাঁক খুঁজুন

সংক্ষেপেনিরাপত্তা ট্যাব খুলে নিরাপত্তা স্ক্যান চালান বোতামে ক্লিক করুন। এক-দুই মিনিটের মধ্যে MonstarX 33টি নিয়ম ধরে আপনার কোড যাচাই করে, অপরিচিত কেউ হিসেবে চলমান অ্যাপে পরীক্ষা চালায়, আর একটি AI পুরো অ্যাপ পড়ে দেখে। আপনি পান A থেকে F পর্যন্ত একটি স্কোর আর পাওয়া সমস্যার একটি তালিকা, সবচেয়ে গুরুতরটি আগে, প্রতিটিতে কোথায় আছে, কেন গুরুত্বপূর্ণ আর কী বদলাতে হবে। কোনগুলো ঠিক করবেন বেছে নিন, MonstarX সাধারণ তৈরির কাজ হিসেবে সেগুলো ঠিক করে আবার স্ক্যান করে। ফলাফল রিপোর্ট হিসেবে ডাউনলোডও করতে পারেন।

দ্রুত লেখা অ্যাপ সাধারণত ব্রাউজারকে একটু বেশিই বিশ্বাস করে: এমন একটি ফাংশন যা যে কেউ চালাতে পারে, নম্বর দিয়ে একটি বুকিং খুঁজে বের করা কিন্তু সেটি কার তা যাচাই না করা, পৃষ্ঠা থেকে নেওয়া দাম। আক্রমণকারীরা ঠিক এই ফাঁকগুলোই খোঁজে।

নিরাপত্তা ট্যাব একজন আক্রমণকারীর চোখে আপনার অ্যাপ পড়ে, যা পায় তা সবচেয়ে গুরুতরটি আগে রেখে তালিকা করে, আর ঠিক করতে সাহায্য করে। একে MonstarX-এর ভেতরে থাকা একটি ছোট পেনিট্রেশন টেস্ট ভাবতে পারেন (এমন একটি নিরাপত্তা যাচাই, যেখানে কেউ ইচ্ছে করে ভেতরে ঢোকার চেষ্টা করে)।

কীভাবে নিরাপত্তা স্ক্যান চালাব?

“কীভাবে নিরাপত্তা স্ক্যান চালাব?” অংশ
  1. প্রকল্প খুলে ওপরের বারে নিরাপত্তা ট্যাবে ক্লিক করুন।

  2. নিরাপত্তা স্ক্যান চালান বোতামে ক্লিক করুন। এতে এক-দুই মিনিট লাগে।

  3. তিনটি অংশ একটির পর একটি শেষ হতে দেখুন। চাইলে ট্যাব ছেড়ে যেতে পারেন: স্ক্যান MonstarX-এর সার্ভারে চলে এবং চলতেই থাকে। বাতিল করুন স্ক্যান থামায় এবং ততক্ষণে যা পাওয়া গেছে তা রেখে দেয়।

স্ক্যান চলার সময় ওপরের বারে নিরাপত্তা ট্যাবের ব্যাজে একটি ঘূর্ণায়মান চিহ্ন দেখায়, তারপর দেখায় অমীমাংসিত সমস্যার সংখ্যা (সবচেয়ে গুরুতরটির রঙে), আর কিছুই অমীমাংসিত না থাকলে একটি সবুজ বিন্দু। পরে আবার স্ক্যান করতে ট্যাবের ওপরে আবার স্ক্যান করুন বোতামে ক্লিক করুন।

স্ক্যান কী কী যাচাই করে?

“স্ক্যান কী কী যাচাই করে?” অংশ

একটি স্ক্যানের তিনটি অংশ:

অংশকী করেখরচ
কোড যাচাইআপনার অ্যাপের প্রতিটি ফাইলে 33টি নিয়ম চলে: সাইন-ইন যাচাই নেই, মালিক কে তা না দেখেই রেকর্ড বদলানো, কোডের ভেতরে লেখা সিক্রেট, লেখা জুড়ে বানানো ডেটাবেস কোয়েরি, অনিরাপদ HTML, যাচাই ছাড়া আপলোড, যাচাই না করা webhook এবং আরও অনেক কিছু।বিনামূল্যে
চলমান অ্যাপে পরীক্ষাঅ্যাকাউন্ট ছাড়া একজন অপরিচিত হিসেবে চলমান অ্যাপে শুধু-পড়ার অনুরোধ: সাইন ইন করা মানুষের জন্য বানানো পৃষ্ঠা, যে রুট যে কাউকে উত্তর দেয়, অন্য সাইট থেকে অ্যাক্সেস, আর প্রকাশিত অ্যাপে নিরাপত্তার হেডার ও এমন ফাইল যা কখনো দেখানো উচিত নয়।বিনামূল্যে
AI পর্যালোচনাএকটি AI মডেল পাওয়া সমস্যাগুলো হাতে নিয়ে পুরো অ্যাপ পড়ে, সেগুলো নিশ্চিত করে বা বাতিল করে, আর এমন জিনিস খোঁজে যা শুধু পড়েই ধরা যায়, যেমন পৃষ্ঠা থেকে বিশ্বাস করে নেওয়া দাম বা এমন ডেটা যা পৃষ্ঠা পাঠায় কিন্তু কখনো দেখায় না।চ্যাটের একটি অনুরোধের মতোই ক্রেডিট লাগে

অ্যাপ লাইভ থাকলে চলমান অ্যাপে পরীক্ষা চলে প্রকাশিত অ্যাপে, নইলে প্রিভিউতে। কোনটিতে পরীক্ষা চালানো হয়েছে, ফলাফলে তা লেখা থাকে।

OWASP একটি অলাভজনক সংস্থা, যারা Top 10 প্রকাশ করে — ওয়েব অ্যাপের সবচেয়ে গুরুতর নিরাপত্তা ঝুঁকির সবচেয়ে পরিচিত তালিকা। প্রতিটি পাওয়া সমস্যা এর একটির অধীনে রাখা হয়, যাতে আপনি (বা কোনো নিরাপত্তা বিশেষজ্ঞ) বোঝেন সমস্যাটি কোন ধরনের:

সহজ ভাষায়
A01 অ্যাক্সেস নিয়ন্ত্রণের ত্রুটিকেউ এমন কিছু দেখতে বা বদলাতে পারে, যা তার নয়।
A02 ক্রিপ্টোগ্রাফির ত্রুটিসিক্রেট বা কোড দুর্বলভাবে রাখা বা তৈরি করা হয়েছে।
A03 ইনজেকশন আক্রমণকেউ যা টাইপ করে, তা কমান্ড বা কোড হিসেবে চলে যায়।
A04 অনিরাপদ নকশাঅ্যাপের যুক্তির অপব্যবহার করা যায়, যেমন সীমাহীন বিনামূল্যের ইমেইল বা বুকিং।
A05 নিরাপত্তার ভুল কনফিগারেশনসেটিংস বেশি খোলা, যেমন নিরাপত্তার হেডার নেই।
A06 দুর্বল এবং পুরোনো উপাদানজানা ফাঁকসহ পুরোনো সফটওয়্যার।
A07 পরিচয় শনাক্তকরণ ও প্রমাণীকরণের ত্রুটিদুর্বল সাইন-ইন বা সেশন ব্যবস্থাপনা।
A08 সফটওয়্যার ও ডেটার অখণ্ডতার ত্রুটিবাইরের কোড বা ডেটা যাচাই ছাড়াই বিশ্বাস করা হয়।
A09 নিরাপত্তার লগিং ও পর্যবেক্ষণের ত্রুটিসিক্রেট লগে ফাঁস হয়, বা আক্রমণ কারও নজরে পড়ে না।
A10 সার্ভার-সাইড অনুরোধ জালিয়াতিআক্রমণকারীর বেছে নেওয়া ঠিকানা থেকে কিছু আনতে অ্যাপকে বাধ্য করা যায়।

CWE (Common Weakness Enumeration) হলো নির্দিষ্ট দুর্বলতার একটি নম্বর দেওয়া তালিকা, যেমন CWE-639: ব্যবহারকারীর নিয়ন্ত্রণে থাকা ID দিয়ে খোঁজা রেকর্ড। প্রতিটি পাওয়া সমস্যায় তার OWASP শ্রেণির লিঙ্ক থাকে, আর থাকলে তার CWE পৃষ্ঠার লিঙ্কও, যাতে আরও পড়তে পারেন।

ফলাফল কীভাবে পড়ব?

“ফলাফল কীভাবে পড়ব?” অংশ

ওপরে দেখবেন 100-এর মধ্যে একটি স্কোর, A থেকে F পর্যন্ত একটি গ্রেডসহ, ঝুঁকির মাত্রা অনুযায়ী অমীমাংসিত সমস্যা, কী স্ক্যান ও পরীক্ষা করা হয়েছে, AI পর্যালোচনায় কত খরচ হয়েছে, আর কয়েক বাক্যে পর্যালোচনার সারাংশ।

স্কোর শুরু হয় 100 থেকে, আর প্রতিটি অতি গুরুতর সমস্যায় কমে 40, প্রতিটি উচ্চ মাত্রার সমস্যায় 15, প্রতিটি মাঝারি সমস্যায় 5 আর প্রতিটি কম মাত্রার সমস্যায় 1। গ্রেড বলে দেয় এরপর কী করতে হবে:

গ্রেডস্কোরঅর্থ
A90–100গুরুতর কিছু পাওয়া যায়নি।
B75–89কয়েকটি জিনিস গুছিয়ে নিতে হবে।
C55–74আরও বেশি মানুষ অ্যাপটি ব্যবহারের আগে উচ্চ মাত্রার সমস্যাগুলো ঠিক করুন।
D35–54গুরুতর ঘাটতি: প্রকাশের আগে ঠিক করুন।
F0–34বর্তমান অবস্থায় অ্যাপটি আক্রমণের ঝুঁকিতে আছে।

প্রতিটি পাওয়া সমস্যায় দেখা যায় এর ঝুঁকির মাত্রা, শিরোনাম, OWASP শ্রেণি, CWE, কোথা থেকে এসেছে (কোড যাচাই, চলমান অ্যাপে পরীক্ষা বা AI পর্যালোচনা), স্ক্যান কতটা নিশ্চিত (নিশ্চিত করা হয়েছে, সম্ভবত বা যাচাই করে দেখতে হবে) আর ফাইল ও লাইন। খুলতে একটিতে ক্লিক করুন:

  • লাইনের আশপাশের কোড, লাইনটি চিহ্নিত করা।
  • সমস্যা কী, কেন এটা গুরুত্বপূর্ণ আর কী পরিবর্তন করতে হবে, সহজ ভাষায়।
  • AI পর্যালোচনা অংশের নোট: এটি সমস্যাটি নিশ্চিত করেছে কি না, আর কীভাবে।
  • কোডে খুলুন আপনাকে কোড ট্যাবে সেই ফাইলে নিয়ে যায়।

AI পর্যালোচনা কোনো সমস্যাকে ভুল সতর্কতা মনে করলে লেখে AI পর্যালোচনা: সম্ভবত আসল সমস্যা নয়। সমস্যাটি তালিকায় থাকে, সবার শেষে, তবে স্কোরে গোনা হয় না।

তালিকার নিচে কী কী যাচাই করা হয়েছে খুললে চলা প্রতিটি যাচাই দেখা যায়, OWASP শ্রেণি অনুযায়ী সাজানো, সঙ্গে টিক, পাওয়া সমস্যার সংখ্যা, বা কেন বাদ দেওয়া হয়েছে।

পাওয়া সমস্যা কীভাবে ঠিক করব?

“পাওয়া সমস্যা কীভাবে ঠিক করব?” অংশ
  1. যেগুলো ঠিক করাতে চান সেগুলোতে টিক দিন, অথবা সব বেছে নিন বোতামে ক্লিক করুন। একটি 2টি সমস্যা ঠিক করুন বোতাম দেখা যায়। কোনো তৈরির কাজ চলার সময় এটি ধূসর হয়ে থাকে।

  2. বোতামে ক্লিক করুন। MonstarX জানায় কী হবে, তারপর আবার 2টি সমস্যা ঠিক করুন বোতামে ক্লিক করুন।

  3. প্রতিটি সমস্যা আপনার ফিচারের পরিকল্পনায় একটি কাজ হয়ে যায় (নিরাপত্তা: …; পরিকল্পনা প্রায় ভরা থাকলে সবগুলো মিলে একটি কাজ), আর চ্যাটে একটি তৈরির অনুরোধ যায়, নিরাপত্তা ব্যাজ দেওয়া। এটি অন্য যেকোনো অনুরোধের মতোই চলে, একটি সংস্করণ রাখে, আর পরে QA অ্যাপটি পরীক্ষা করতে পারে।

  4. তৈরির কাজ শেষ হলে স্ক্যান নিজে থেকেই আবার চলে। যে সমস্যাগুলো আর নেই, সেগুলো সমাধান হিসেবে দেখায় (MonstarX-এর এজেন্ট 2টি ঠিক করেছে)। যেটি এখনো আছে, সেটি সংশোধনের পরও সমস্যাটি আছে চিহ্ন নিয়ে ফিরে আসে।

কোনো সমস্যা আসল সমস্যা না হলে?

“কোনো সমস্যা আসল সমস্যা না হলে?” অংশ

সেটি খুলে আলাদা করে রাখুন বোতামে ক্লিক করুন, তারপর কারণ জানান:

  • আসল সমস্যা নয়
  • গৃহীত ঝুঁকি: আপনি এ বিষয়ে জানেন এবং ঝুঁকিটি মেনে নিচ্ছেন।
  • অন্য উপায়ে সমাধান করা হয়েছে

আলাদা করে রাখা সমস্যা আলাদা রাখা হয়েছে তালিকায় চলে যায় এবং পরের প্রতিটি স্ক্যানে সেখানেই থাকে, অন্য কোড বদলালেও। আবার তালিকায় আনতে ফিরিয়ে আনুন বোতামে ক্লিক করুন।

নিরাপত্তা রিপোর্ট কীভাবে ডাউনলোড করব?

“নিরাপত্তা রিপোর্ট কীভাবে ডাউনলোড করব?” অংশ

ফলাফলের নিচে রিপোর্ট ডাউনলোড করুন বোতামে ক্লিক করুন। আপনি পাবেন একটি Markdown ফাইল (যেকোনো এডিটরে খোলে এমন সাধারণ লেখার নথি), আপনার প্রকল্পের নামে, যেমন paws-co-booking-security-report.md। এটি সাজানো একটি পেনিট্রেশন টেস্ট রিপোর্টের মতো:

  • পরিধি ও পদ্ধতি: কতগুলো ফাইলে কতগুলো নিয়ম চলেছে, কী পরীক্ষা করা হয়েছে, আর AI পর্যালোচনা কী করেছে।
  • সারাংশ: স্কোর, ঝুঁকির মাত্রা অনুযায়ী অমীমাংসিত সমস্যা আর পর্যালোচনার সারাংশ।
  • পাওয়া সমস্যা: প্রতিটির OWASP ও CWE লিঙ্ক, কোথায় আছে, কোড, সমস্যা কী, কেন গুরুত্বপূর্ণ আর কী বদলাতে হবে।
  • আগের স্ক্যানের পর সমাধান হওয়া সমস্যা, আর মালিক আলাদা করে রেখেছেন, আপনার দেওয়া কারণসহ।
  • যাচাইগুলো: প্রতিটি যাচাই আর তার ফলাফল।

কোনো ডেভেলপার, ক্লায়েন্ট বা অডিটরের সঙ্গে শেয়ার করতে এটি বেশ কাজের। স্ক্যান চলা থামলেই রিপোর্টটি পাওয়া যায়।

সাধারণ জিজ্ঞাসা

“সাধারণ জিজ্ঞাসা” অংশ
স্ক্যান কি বিনামূল্যে?

কোড যাচাই আর চলমান অ্যাপে পরীক্ষা বিনামূল্যে। AI পর্যালোচনায় চ্যাটের একটি অনুরোধের মতোই ক্রেডিট লাগে, আর ফলাফলে খরচ কত হয়েছে তা দেখায়। পাওয়া সমস্যা ঠিক করতে অন্য যেকোনো তৈরির কাজের মতোই ক্রেডিট লাগে।

ভালো গ্রেড মানে কি আমার অ্যাপ নিরাপদ?

কোনো স্ক্যানই সে নিশ্চয়তা দিতে পারে না। এর নিয়ম, পরীক্ষা আর পর্যালোচনা যা দেখতে পায়, সেটুকুই এটি খুঁজে পায়। আগে অতি গুরুতর ও উচ্চ মাত্রার সমস্যাগুলো ঠিক করুন, আবার স্ক্যান করুন, আর অনেক মানুষ অ্যাপটি ব্যবহারের আগে অর্থ বা ব্যক্তিগত তথ্য সামলায় এমন যেকোনো অংশ একজন মানুষকে দিয়ে পর্যালোচনা করিয়ে নিন।

প্রকাশের আগে স্ক্যান করব, নাকি পরে?

দুবারই। বড় ফাঁকগুলো ধরতে প্রকাশের আগে স্ক্যান করুন। অ্যাপ লাইভ হলে আবার স্ক্যান করুন: কিছু যাচাই, যেমন নিরাপত্তার হেডার আর এমন ফাইল যা কখনো দেখানো উচিত নয়, শুধু প্রকাশিত অ্যাপেই চলে।

যাঁদের সঙ্গে প্রকল্প শেয়ার করেছি, তাঁরা কি স্ক্যান দেখতে পান?

না। স্ক্যান প্রতিটি দুর্বল জায়গার নাম বলে দেয়, তাই নিরাপত্তা ট্যাব শুধু মালিক দেখতে পান।

স্ক্যান কি MonstarX-এর নিজস্ব সাইন-ইন আর ডেটাবেসের কোড যাচাই করে?

না। সেই অংশগুলো প্রতিটি অ্যাপে একই এবং MonstarX সেগুলো রক্ষণাবেক্ষণ করে। স্ক্যান যাচাই করে আপনার অ্যাপের জন্য লেখা কোড আর আপনার চলমান অ্যাপ।

স্ক্যান শুরুর সময় কোনো তৈরির কাজ চললে কী হয়?

স্ক্যান তৈরির কাজ শেষ হওয়া পর্যন্ত অপেক্ষা করে (সর্বোচ্চ 10 মিনিট), যাতে তৈরি হয়ে যাওয়া কোডই যাচাই করে।