システム開発会社です。Web開発の補助サービスを開発中です。
×
時間単価制 |
2,000円 〜 3,000円 |
---|---|
稼働時間/週 | 10時間/週 |
期間 | 1週間以内 |
掲載日
|
2019年02月13日 |
応募期限 |
2019年02月26日 |
必要なスキル |
応募した人 | 8 人 |
---|---|
契約した人 | 3 人 |
募集人数 | 2 人 |
気になる!リスト | 28 人 |
【 概要 】 JavaScript投稿サイトのセキュリティテスト(ハッキングテスト) 【 依頼内容 】 JavaScriptやHTMLファイルを自由に投稿でき、第三者が自由に閲覧できるサイトを開発中です。 ご存知かも知れませんがJavaScriptには、自由に第三者が使えるとセキュリティ的に問題のある機能がいくつも存在します。 iframeのサンドボックスなど、Javascriptを制限できる機構がHTMLには用意されていますが、それだと使える使えないの大雑把な制御しかできないため、独自の制御機構を作って、Javascriptの処理に制限を設けています。 そこで創造力(?)を働かせて、ハッキング対策に抜けがないかチェックして頂きたいと思います。 恐らく次のような点の確認になると思います。 1.悪用されると危険な機能が必要に応じて制限されており、その制限対象に抜けがないか →例えば、cookieやlocalStorageのアクセス、他サイトへのAjax、ログイン・ログアウトボタンをJSから強制クリックできないかなど 2.制限機能を迂回する方法はないか →例えば、eval、Function、constructor など文字列をコードとして実行できるもの、document.writeからscriptタグ埋め込み実行、thisからwindow取得など。 3.投稿されたJavaScriptは構文解析されますが、特定の構文で解析が失敗することはないか →例えば、var x,function y(){....}のような構文を書くとうまく動作しない等、もし発見されましたら。 4.その他バグ、セキュリティ的に問題となる点など →例えば、URLのパスに../を入れると不正なフォルダが表示される、外部リンク(<a>タグ)をJSにて作るとクリック時に確認画面が表示されない等 テスト仕様書等はありません。独創的なテスト(ハッキング)をお願い致します。 もしテスト中にサイト動かなくなっていたら、連絡くださいw 【 応募要件 】 以下のようなJavaScriptのセキュリティに関するサイトをざっくり眺めて、理解に問題ないことが応募要件となります。 (どちらか片方で問題ありません) ◆JavaScript とHTML5のセキュリティ対策 https://laboradian.com/sec-js-html5/ ◆JavaScriptでセキュアなコーディングをするために気をつけること https://developer.cybozu.io/hc/ja/articles/201850320-JavaScript%E3%81%A7%E3%82%BB%E3%82%AD%E3%83%A5%E3%82%A2%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%87%E3%82%A3%E3%83%B3%E3%82%B0%E3%82%92%E3%81%99%E3%82%8B%E3%81%9F%E3%82%81%E3%81%AB%E6%B0%97%E3%82%92%E3%81%A4%E3%81%91%E3%82%8B%E3%81%93%E3%81%A8 【 テスト方法 】 (1)次のURLにアクセスしてください。 https://codengine.cloud (2)画面下のリンク「Ajax制限:html」をクリックしてサンプルHTMLをダウンロードしてください (スマホから表示すると、サンプルはダウンロードできず、サンプルのHTMLがそのまま画面表示されてしまうのでご注意ください) (3)ダウンロードしたサンプルを、ドラッグ&ドロップで、サイトにアップロードしてください (4)投稿後、「公開用URLを開く」をクリックし、投稿されたHTMLファイルが適切に機能制限されているか確認してください 【 報酬 】 恐らく、他に類を見ない依頼と思います。 正直なところ、どのような人に依頼したら良いかわからず、また依頼したところで効果があるのかさえわかりません。 このため、一旦、次の2つの方法で募集します。 それぞれ予算10万円を使い切れば、一度終了としたいと思います。 (A)時給2000円 + 1件の発見につき成功報酬5000円 →最大10時間まで時給をお支払いします。2名程度募集し、様子を見て追加等したいと思います。 (B)成功報酬のみ(1件の発見につき成功報酬1万円~) (A)のほうは、応募をお願い致します。 (B)のほうは 「オレでなきゃ見逃しちゃうね」という方、もしおられましたらお願い致します。 応募しなくて大丈夫ですので、発見されたらご連絡ください。 しばらくしても(B)にて発見がない場合は、1件あたりの報酬額を少しずつ上げたいと思います(予算合計はそのままです) ※1件の発見というのは、それぞれ独立した事象とさせてください。 【 納期 】 急いでないため、納期は特にありません。マイペースでお願いします。 (一週間以内をシステム上選択していますが無視してください) 【 問題発見時 】 何か発見した場合、直接メッセージを送って頂ければと思います(もし質問欄等あれば、そちらに内容をご記載頂いても大丈夫です。が、クラウドワークスさんにはなかった気が) 発見された方に追加でプロジェクトのオファー等させて頂きます。そちらで支払います。 発見された問題点は、共有のため、随時こちらに追記していきます。 また一人3件見つけられた場合、予算と平行作業の関係上、一旦、作業を止めてください。 (予算を超えなさそうなら続けて頂ければと思います。) 【 例外について 】 次の点は、既知の内容のため、問題からは外させてください。 (1)JavaScriptの無限ループ、無限再帰関数 (2)alertの無限ループ →これらは優先順位が低いと思われるため一旦対応を後回しにしています。 (3)偽のヘッダーを作り、styleのz-indexを変更して、本物のヘッダーの上に被せて、誤操作を誘う →そのうち対応します。z-index以外に、styleをJSから自由に設定できてまずいものがありましたら、教えてください。 【 注意点 】 各機能はどこかに、文字列かプロパティが定義されていないと使えないようになっています。例えば、setIntervalという機能をテストしたい場合、文字列"setInterval"か、プロパティ.setIntervalがどこかに存在しないと使用できません。 evalをテストする際によく忘れるのでお気をつけください。 逆に、どこにも該当文字列・プロパティがないのに使えてしまう機能がありましたら、ご連絡ください。 複雑な依頼ですみません。気軽にご応募頂ければと思います。 |
特記事項 |
---|
|
クラウドワーカー | 応募日時 |
---|---|
(退会済み) | 2019/02/23 14:02 |
ringing_cw | 2019/02/20 22:13 |
talents111 | 2019/02/18 23:35 |
ako7530 | 2019/02/15 22:14 |
mosafuku | 2019/02/13 15:35 |
yusei_wy | 2019/02/13 15:35 |
seasidemanblues | 2019/02/13 15:35 |
レスポンシブweb | 2019/02/13 15:34 |