নিরাপত্তা

আমাদের নিরাপত্তা মডেল এক বাক্যে: সার্ভারে আক্রমণ করার মতো কিছু নেই। নিচের সবকিছু আপনার DevTools থেকে যাচাইযোগ্য।

আর্কিটেকচার

Abundera QR হলো একটি স্ট্যাটিক সিঙ্গেল-পেজ অ্যাপ্লিকেশন যা Cloudflare Pages থেকে পরিবেশন করা হয়। কোনো অ্যাপ্লিকেশন সার্ভার নেই, কোনো ডেটাবেস নেই, কোনো ব্যবহারকারী অ্যাকাউন্ট নেই, কোনো প্রমাণীকরণ নেই, কোনো API এন্ডপয়েন্ট নেই এবং ব্যবহারকারীর ডেটা প্রক্রিয়াকারী কোনো ব্যাকএন্ড কোড পাথ নেই। প্রতিটি QR তৈরি, এনকোডিং, স্ক্যানিং এবং রেন্ডারিং অপারেশন সম্পূর্ণভাবে আপনার ব্রাউজারের মধ্যে চলে।

হুমকির মডেল

যেহেতু আমরা কোনো ব্যবহারকারীর ডেটা সংগ্রহ, সঞ্চয় বা প্রেরণ করি না, তাই সবচেয়ে সাধারণ ওয়েব-অ্যাপ হুমকি, ক্রেডেনশিয়াল চুরি, ডেটাবেস লঙ্ঘন, সেশন হাইজ্যাকিং, সার্ভার-সাইড ইনজেকশন, প্রযোজ্য নয়। অবশিষ্ট আক্রমণের পৃষ্ঠ হলো আমাদের অরিজিন থেকে পরিবেশিত স্ট্যাটিক অ্যাসেট বান্ডেল (HTML, CSS, JavaScript)। আমরা ধরে নিয়ে ডিজাইন করি:

কন্টেন্ট সিকিউরিটি পলিসি, ডিরেক্টিভ অনুযায়ী

বর্তমান পলিসি (যেকোনো অনুরোধের জন্য Response headers-এ যাচাই করুন):

Content-Security-Policy:
  default-src 'self';
  script-src 'self' 'wasm-unsafe-eval';
  worker-src 'self' blob:;
  style-src 'self' 'unsafe-inline';
  font-src 'self';
  img-src 'self' data: blob: https:;
  connect-src 'self' https:;
  frame-ancestors 'none';
  base-uri 'self';
  form-action 'self'

প্রতিটি ডিরেক্টিভ কী করতে দেয় এবং কোথায় আপোস করে:

/bio/* (ব্যবহারকারী-সরবরাহকৃত অ্যাভাটারের জন্য শিথিল img-src) এবং /embed/* (ইচ্ছাকৃত এম্বেডিংয়ের জন্য শিথিল frame-ancestors)-এ ভিন্ন CSP পলিসি প্রযোজ্য। উভয়ই site/_headers-এ ডকুমেন্ট করা হয়েছে।

ট্রান্সপোর্ট + ফ্রেমিং হেডার

সার্ভিস ওয়ার্কার

আমাদের সার্ভিস ওয়ার্কার (site/sw.js) শুধুমাত্র একই-অরিজিনের অ্যাসেট ক্যাশ করে। fetch হ্যান্ডলার স্পষ্টভাবে ক্রস-অরিজিন অনুরোধ এবং non-GET পদ্ধতি প্রত্যাখ্যান করে, আপনি GitHub-এ লজিক পড়তে পারেন। ক্যাশ রাইট event.waitUntil()-এ মোড়ানো তাই এগুলি নেভিগেশনের মাঝে বাদ পড়তে পারে না।

ইনপুট স্যানিটাইজেশন

ব্যবহারকারীর ইনপুট গ্রহণকারী প্রতিটি রেন্ডারিং পাথ এটিকে অবিশ্বস্ত টেক্সট হিসেবে বিবেচনা করে:

ক্রস-অরিজিন ইমেজ ফেচিং

যখন একজন ব্যবহারকারী vCard ফটো বা লোগো হিসেবে একটি https: URL পেস্ট করেন, ব্রাউজার CORS এবং আমাদের CSP-এর img-src অনুমতি তালিকা সাপেক্ষে এটি ফেচ করে। ছবিটি একটি ক্যানভাসে রেন্ডার হয়। এটি কখনো লাইভ DOM হয় না, কখনো কোড হিসেবে চলে না এবং কখনো আমাদের অরিজিনে পৌঁছায় না, ফেচটি হলো ব্রাউজার → রিমোট ইমেজ, এবং ফলাফলটি ক্লায়েন্ট-সাইডে পেইন্ট করা হয়। একটি রিমোট ইমেজ URL নিয়ন্ত্রণকারী আক্রমণকারী ট্র্যাক করতে পারে যে URL লোড হয়েছিল (তাদের নিজের সার্ভারে একটি লগ লাইন) কিন্তু আমাদের পেজ থেকে কিছু বের করতে পারে না।

সাবরিসোর্স ইন্টিগ্রিটি (SRI)

আমরা যে সমস্ত JavaScript এবং CSS পাঠাই তা একই-অরিজিনের। আমরা তৃতীয়-পক্ষের স্ক্রিপ্ট বা স্টাইলশিট লোড করি না, তাই SRI হ্যাশ প্রযোজ্য নয়। যদি আমরা কখনো তৃতীয়-পক্ষের অ্যাসেট লোড করি, আমরা এটিতে একটি SRI integrity অ্যাট্রিবিউট পাঠাব এবং এই পেজে হ্যাশ-আপডেট প্রক্রিয়া ডকুমেন্ট করব।

একটি দুর্বলতা রিপোর্ট করা

আপনি যদি Abundera QR-এ একটি নিরাপত্তা সমস্যা আবিষ্কার করেন, আমাদের কোডে, আমাদের ডিপ্লয়মেন্টে, বা আমরা যে ডিপেন্ডেন্সি পাঠাই তাতে, অনুগ্রহ করে এটি ব্যক্তিগতভাবে security@abundera.ai-এ রিপোর্ট করুন। আমরা ৭২ ঘণ্টার মধ্যে ট্রিয়াজ করার লক্ষ্য রাখি। আপনি আমাদের /.well-known/security.txt ফাইলে যোগাযোগের বিবরণের মাধ্যমেও আমাদের সাথে যোগাযোগ করতে পারেন।

কোনো বাগ বাউন্টি নেই (এখনো)

আমরা বর্তমানে পেইড বাউন্টি অফার করি না, কিন্তু প্রতিটি নিশ্চিত বৈধ রিপোর্ট চেঞ্জলগে ক্রেডিট এবং আমাদের প্রকাশ্য ধন্যবাদ পায়।

উপরের যেকোনোটি যাচাই করুন

এই পেজের প্রতিটি দাবি আমাদের বিশ্বাস না করেই আপনার ব্রাউজারের DevTools থেকে যাচাইযোগ্য:

যোগাযোগ

নিরাপত্তা প্রকাশ: security@abundera.ai

সর্বশেষ আপডেট: ২০২৬-০৪-১৯। পরবর্তী পর্যালোচনা: ২০২৬-০৭-১৯।