যে "ফোন হোম" এক্সটেনশনগুলি কীভাবে চিহ্নিত করবেন?


10

পটভূমিতে কোনও রিমোট সার্ভারে HTTP অনুরোধগুলি প্রেরণকারী কোড সনাক্ত করার কোনও উপায় আছে কি?

আমি লক্ষ্য করেছি যে আমার যখন আমার বিকাশ মেশিনে স্পট রিসিপশন হয়, তখন অনেকগুলি দোকান লোড করতে দীর্ঘ সময় নেয়, এমনকি লোকালহোস্টে চালানো।

আমার একটা অনুভূতি আছে কারণ আমার দাগযুক্ত সংযোগের কারণে কিছু দূরবর্তী সার্ভারগুলি সাড়া দিতে দীর্ঘ সময় নেয়। আমি এই অনুরোধগুলি সনাক্ত করতে এবং সেগুলি সরাতে চাই, কারণ আমি আশঙ্কা করি তারা লাইভ ইনস্টলেশনগুলিও ধীর করে ফেলতে পারে, উদাহরণস্বরূপ যদি বাহ্যিক সার্ভারটি নিচে বা ধীর হয়ে থাকে ...


1
আপনি এই কলগুলি সরাতে পারবেন কিনা তা দয়া করে নোট / পরীক্ষা করুন check আপনি সম্ভবত অনুমোদিত, কিন্তু আমি এটি উদাহরণস্বরূপ দেখেছি যেখানে এটি এক্সটেনশনগুলির প্রয়োজনীয়তার একটি।
ডেভিড মুল্ডার

উত্তর:


8

আমরা স্ট্যাকের কোনও সম্পর্কিত ওয়েব সার্ভারে কমান্ড লাইন (বাশ) ফাংশন দিয়ে এটি করি,

monitor_outbound ()
{
  tcpflow -p -c -i bond0 '( port 80 or port 443 ) and ' $(ip addr list | grep -Eoh "([0-9]{1,3}\.){3}[0-9]+" | sort -u | awk '{print "src host " $1 " or"}' | tr '\n' ' ' | sed -E 's# or $##g') | grep --line-buffered -oE '(GET|POST|HEAD) .* HTTP/1.[01]|Host: .*' | sed --unbuffered "s/^/$(date "+%b %d %T"): /g"
}

এর সংক্ষেপে, আপনি ম্যাজেন্টোতে সিআরএল / ফোপেন পদ্ধতিগুলি উত্তোলন করতে পারেন (তবে এটি ধরে নিচ্ছেন যে তারা এটি করার জন্য মূল পদ্ধতিগুলি ব্যবহার করতে বিরক্ত করেন), প্রায়শই না আপনি কাস্টম মডিউলগুলি তাদের উন্মুক্ত file_get_contents()বা curlপদ্ধতিগুলি ব্যবহার করতে পারবেন ।

আপনি একটি সহজ সঙ্গে দ্রুত চেক করতে পারেন grep(ধরে নিই কোডটি অবরুদ্ধ নয়)

grep -ilrE "curl|file_get_contents|fopen|Zend_Http_Client" app/code/local app/code/community

এবং যেমন @ মারিয়াস নীচে বলেছে, অস্পষ্ট মডিউলগুলি দেখুন, যা base64এনক্রিপ্ট করা স্ট্রিংগুলিতে তাদের পদ্ধতিগুলি লুকিয়ে রাখতে পারে

grep -ilrE "eval[\t ]+\(" app/code/local app/code/community

উপরের সিএলআই পদ্ধতিতে একমাত্র সমস্যা হ'ল আউটবাউন্ড এইচটিটিপি অনুরোধের জন্য চূড়ান্ত কার্যকর, এটি HTTPS এর জন্য অকেজো (ট্র্যাফিক এনক্রিপ্টড দেওয়া আছে), আপনি যে সেরাটি পাবেন তা হ'ল একটি আইপি / হোস্টনাম, তবে আর কিছুই নয়।


2
আপনি evalসেই evalফাংশনগুলিতে কী ঘটে তা সন্ধান করতে এবং দেখতে চাইতে পারেন । ফোন বাড়ির বেশিরভাগ এক্সটেনশানগুলি evalকেবল তাই আপনি সহজেই তাদের ফোন নম্বরটি খুঁজে পান না use
মারিয়াস

2
evalএর জন্যও একটি রেজেক্স অন্তর্ভুক্ত করার জন্য আপডেট হয়েছে
বেন লেসানী - সোনাসি

1

শক্ত উত্তর দেওয়া - যদি কিছু তৃতীয় পক্ষের এক্সটেনশানগুলি দূরবর্তী সার্ভারে অনুরোধগুলি প্রেরণ করে তবে অনুরোধটি কীভাবে নির্মিত হয়েছে তার উপর নির্ভর করে এটি বহু উপায়ে ঘটতে পারে। এই জাতীয় দৃষ্টান্তগুলি খুঁজে পাওয়ার জন্য আপনার সর্বোত্তম বিকল্পটি (যদিও দীর্ঘায়িত বায়ুযুক্ত) আসলে এক্সটেনশন কোডটি অধ্যয়ন করা, দুর্ভাগ্যক্রমে এই জাতীয় জিনিসগুলি সনাক্ত করার জন্য একটি কম্বল পদ্ধতি নেই।

আপনি কী কী এক্সটেনশানগুলি ইনস্টল করেছেন বা কীভাবে সেগুলি নির্মিত হয়েছে সে সম্পর্কে কোনও ধারণা না রেখে আমি যুক্ত করব যে যদি এই এক্সটেনশানটি ভালভাবে বিকশিত করা হয় তবে এই জাতীয় যোগাযোগ এমনভাবে করা উচিত ছিল যাতে এটি কখনই সীমান্তের কার্য সম্পাদনকে প্রভাবিত করবে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.