ফায়ারফক্স ওএস এ ডিবাগিং এবং নিরাপত্তা পরীক্ষা

এই গাইডটির লক্ষ্য হল নিরাপত্তা পরীক্ষকগণদের প্রতি যারা ফায়ারফক্স ওএস পরীক্ষা শুরু করতে যাচ্ছে ; এইটি সাহায্য করবে সম্প্রদায়ের সদস্যদেরকে  অ্যাপ্লিকেশন নিরীক্ষা করতে এবং ফায়ারফক্স ওএস প্লাটফর্ম নিজেই সাহায্য করবে যদি আপনি পূর্বে এটি না করে থাকেন তাহলে Firefox OS security overview পড়ার মাধ্যমে শুরু করে দিতে পারেন; তাহলে এটি পরিভাষা এবং আর্কিটেকচারের মধ্যে একটি মৌলিক ব্যাকগ্রাউন্ড প্রদান করবে ।

এই গাইডটিতে নিম্নলিখিত সাবসেকশনগুলি রয়েছে:

Getting started
এখানে কিভাবে ফায়ারফক্স ওএস ডেস্কটপ বিল্ড শুরু করবো এবং কিভাবে ফায়ারফক্স ওএস চলমান অ্যাপ্লিকেশনগুলি পরিদর্শন ও নিয়ন্ত্রণ করা যায় তাতে তার ব্যাখ্যা দেয়া হয়েছে ।
Intercepting Firefox OS traffic using a proxy
এটি পরিদর্শন করে কিভাবে প্রক্সি ব্যবহার করে নেটওয়ার্ক ট্রাফিক ব্যাহত করা যায় ।
Modifying Gaia
কিভাবে B2G ডেস্কটপ এর একটি কাস্টম প্রোফাইলের মাধ্যমে সেইসাথে কিভাবে আপনার নিজের তৈরী অ্যাপস নির্মাণ ও ইনস্টল করতে পারবেন তাও বলা হয়েছে ।

আমাদের পরীক্ষার সবকিচ্ছু B2G Desktop এর বিরুদ্ধে ঘটবে , আপনার ডেস্কটপ কম্পিউটারের জন্য একটি নেটিভ ফায়ারফক্স ওএস তৈরি হবে । আপনি  flavor of nightly build (Linux, Mac OS, Windows)ডাউনলোড করা শুরু করে দিন অন্য কিছু পড়ার আগে ।

কিভাবে শুরু করবেন

ধরে নিন আপনি  B2G ডেস্কটপ ডাউনলোড করে ফেলেছন উপরের নিয়ম অনুযায়ী , এখন আপনি তৈরি পরের ধাপের জন্য ।

লিনাক্স

B2G ডেস্কটপ সেট আপ করা , ফাইল নিষ্কাশন করা এবং b2g বাইনারি চালানোর মতই সোজা ।

tar xf b2g-something-something.tar.bz2
cd b2g
./b2g

ম্যাক

ডাউনলোড করা ডিস্ক ইমেজ ফাইলটি খুলবেন এবং  B2G অ্যাপ্লিকেশনটি আপনার  to your /Applications ডিরেক্টরিতে কপি করুন । এটি হয়ে যাবার পর আপনি B2G aplication আইকনটি ক্লিক করে B2G ডেস্কটপ আরম্ভ করতে পারেন ।অন্যথায় আপনি টার্মিনাল থেকে এটি আরম্ভ করতে পারেন নিচের নিয়ম অনুযায়ী:

/Applications/B2G.app/Contents/MacOS/b2g

উইন্ডোজ

ডাউনলোড করুন এবং একটি সুবিধাজনক অবস্থানে জিপ ফাইলটি নিষ্কর্ষ করুন। ডাবল ক্লিক করুন b2g.exe এর উপর B2G ডেস্কটপ শুরু করার জন্য ।

টীকা:লেখার সময়, উইন্ডোজ নেভিগেশন B2G ডেস্কটপ চলমান নামক একটি বিষয় আছে. আপনি এর পরিবর্তে  Firefox OS simulator ব্যবহার করে  দেখতে পারেন

টিপস 

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

B2G ডেস্কটপ এর সঙ্গে নিজেকে স্বাচ্ছন্দ্য করে তুলুন  ; অবশ্যই পড়বেন Using the B2G desktop client যাতে করে আপনি এর কাজ শিখতে পারেন ।

এখন বাস্তব চুক্তি করার ক্ষেত্রে, আমরা জাভাস্ক্রিপ্ট ফায়ারফক্স ওএস ভিতর থেকে কল করতে চাই ।

ফায়ারফক্স অপারেটিং সিস্টেমের জন্য ডিবাগিং শেল প্রাপ্ত করার পদ্ধতি

Marionette  সেলেনিয়াম / WebDriver API-এর উপর ভিত্তি করে চলে,এবং  ডিবাগিং শেল জন্য ভিত্তি প্রদান করে যা ব্যবহার করে স্বয়ংক্রিয় ফায়ারফক্স ওএস পরীক্ষা করা হয় । প্রথমত, marionette client (পাইথনলেখা) সেট আপ করতে হবে এবং সেখানে দেওয়া ইনস্টলেশনের নির্দেশাবলী নির্দ্বিধায় অনুসরণ করতে হবে ।

টীকা:সাম্প্রতিক পরীক্ষা র মাধ্যমে দেখা গিয়েছে যে mozbase এর কিছু নির্দিষ্ট সংস্করণের সঙ্গে সমস্যা থাকতে পারে আপনার । শেষ পরিচিত-কর্মরত Mozbase হল  9ee2de কমিট

টীকা: যেহেতু আপনি নাইটলি বিল্ড ব্যবহার করছেন, আপনার  b2g প্রোফাইল এ (just like in the Firefox browser, all user settings are stored within a profile) ইতিমধ্যে  Marionette, লাইনের মাধ্যমে সক্রিয় হওয়া উচিত ছিল ।
user_pref("marionette.defaultPrefs.enabled", true); in gaia/profile/prefs.js. যদি না হয় তাহলে আপনি ভুল বিল্ড ব্যবহার করছেন  ।

এই মুহুর্তে, আপনি চিন্তা করতে পারেন পাইথন কনসোল স্পিনিং আপ করতে, marionette ক্লায়েন্ট লাইব্রেরী ইম্পোর্ট করা এবং ডিবাগিং সেশন তৈরি করা , কিন্তু আমরা অন্য কিছু করতে পারি: স্টিফান আরেন্টেজ একটি সহজ জাভাস্ক্রিপ্ট কনসোল তৈরি করেছেন যেটি marionette ক্লায়েন্ট লাইব্রেরীর উপরে রানকরে । সুতরাং, এর জন্য ডাউনলোড করা যাক fxos-repl.py

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

$ python fxos-repl.py list
app://homescreen.gaiamobile.org/index.html#root
app://browser.gaiamobile.org/index.html
app://keyboard.gaiamobile.org/index.html

এখন আসুন ব্রাউজার অ্যাপ্লিকেশন সংযোগ দেয় এবং তা পরীক্ষা করি :

$ python fxos-reply.py connect app://browser.gaiamobile.org/index.html
Connected to app://browser.gaiamobile.org/index.html

API টিdocument.querySelector() ব্যবহার করে <menu> ট্যাগটি  আইডি toolbar-start সহ খুঁজে বের করতে হবে, এবং  এটির HTML টি দেখতে পারব  :

>>> document.querySelector("menu#toolbar-start").outerHTML
<menu type="toolbar" id="toolbar-start">
        <form id="url-bar" novalidate="">
          <input id="ssl-indicator" value="" type="image">
          <input id="url-input" placeholder="Enter search or address" data-l10n-id="enter-search-or-address" x-inputmode="verbatim" type="text">
          <input style="background-image: url(&quot;style/images/go.png&quot;);" id="url-button" value="" type="image">
        </form>
        <span id="tabs-badge">1<span id="more-tabs">›</span></span>
        <button id="awesomescreen-cancel-button"></button>
        <div id="throbber"></div>
      </menu>

এটি আপনার কাছে পরিচিত লাগছে? এটি আক্তি টুল বার যেটির মধ্যে অ্যাড্রেস বার এবং নতুন ট্যাব বার আছে ।

এখন শেলটি ব্যবহার করে  কিল্ক করে নতুন ট্যাব বোতাম এ যাওয়া যাক । এইটির আইডি হল  tabs-badge

>>> document.querySelector("#tabs-badge").click()

নতুন ট্যাব ইউআই এখন দেখাবে । অন্য কিছু চেষ্টা করা যাক :

>>> alert(location.href)

এখন খেলুন !

ডকুমেন্ট ট্যাগ এবং অবদানকারী

 Contributors to this page: chrisdavidmills, subrina29
 সর্বশেষ হালনাগাদ করেছেন: chrisdavidmills,