Webアプリケーションがどのように機能するか、そして最終的にはどの言語で記述されているかについての情報をセキュリティテスターが収集することが基本であると思います。
URL拡張機能、HTTPヘッダー、セッションCookie、HTMLコメント、およびスタイルシートが一部の情報を明らかにする可能性があることは知っていますが、それでも困難であり、保証されていません。
だから私は疑問に思っていました:ウェブサイトの背後にあるテクノロジーとフレームワークを決定する方法はありますか?
サーバーにアクセスできない場合に100%確実である方法はないので、それは推測です。ここにいくつかの手がかりがあります:
login.php
は、おそらくPHPスクリプトです。X-Powered-By: PHP/7.0.0
は、ページがPHPによってレンダリングされます。Warning: Division by zero in /var/www/html/index.php on line 3
は、たとえばPHPです。CREATOR: Gd-jpeg v1.0 (using IJG JPEG v90), default quality
がリークするため、使用されている言語を推測するのに役立つ場合があります。/
と/index.php
が同じページかどうかを確認します。/humans.txt
を確認)、パブリックリポジトリまたはオンラインプロファイルでのスキルを確認できます( GitHub、LinkedIn、Twitter、...)。また、ウェブサイトがフレームワークとCMSのどちらで構築されているかを知りたい場合もあります。これにより、使用されている言語に関する情報が得られます。
/wp-content/
ディレクトリにある場合、WordPressが使用されていることを意味します。サーバーから送信されるすべての情報に注意してください あなたをだますために変更される可能性があります 。推測を検証するには、常に複数のソースを使用するようにしてください。
推測プログラミング言語の場合、以下に詳述する3つのステップのアプローチに従うことができます:
下部のサイトページで次のようなフレーズを検索します。
->
"Powered by XXX"->
"Proudly Powered by XXX"->
"XXXで実行中"->
...
技術的な観点からWebサイトについて話し合うことができる会議に参加するかどうか、サイトを検索します
ブラウザでダウンロードしたHTMLコードを読む
開発者ツールバーのNetwork Tab
を起動して、ブラウザとサーバーの間で行われる交換を調べます。
いくつかの既知の隠しページを検索します。
wget -head http://the-site.com/private/admin
200を取得した場合、サイトは複数の(無料、有料など)利用可能なソフトウェアで実行されている可能性があります。
Webサイトで生成されたエラーを探すことができます。
検索エンジンに入力するいくつかのキーワード:
バックエンドで使用されているテクノロジーを推測することもできます。
ウェブサイト業界で人気のあるテクノロジーを見つける
競合他社が使用しているテクノロジーを見つける
他の競合他社とのサイトの比較を見つけます。
これらの比較では、使用中のテクノロジーについて説明する場合があります
これらのサイトは、ターゲットとするサイトに優れた情報を提供できます。彼らはあなたのために仕事の一部をすでに行っているかもしれません。
http://w3techs.com/sites
=>ターゲットとするサイトのURLを入力し、検出されたテクノロジー(クライアントまたはサーバー側)を確認します。
サイトは、1MのAlexaランキングのトップにある必要があることに注意してください。
http://stackshare.io/search/q= <keyword >
=><keyword>は、会社名、ウェブサイト名など、何でもかまいません
ステップ1で見つけた証拠は、サイトの所有者が変更できるため、間違っている可能性があります。それらの証拠の間の矛盾を見つけるようにしてください。矛盾する証拠を排除します。
ステップ2の証拠をさまざまなソースとあなたのソースの間でマージします。再び矛盾する証拠を排除します。
以下のような表ですべての調査結果を再開します。
+-------------+-----------+------------------+ ... +----------+-------+--------+
| EVIDENCES | ON SITE | Search Engine 1 SOURCE n SCORE PCT (%)
+-------------+------------------------------+ ... +----------+-------+--------+
| PHP 7 | X | X | X | 3 | 300/n
+-------------+------------------------------+ ... +----------+-------+--------+
| Wordpress | | X | X | 2 | 200/n
+-------------+------------------------------+ ... +----------+-------+--------+
...
+-------------+------------------------------+ ... +----------+-------+--------+
| EVIDENCE m | | | | | (100*SCORE)/n
+-------------+------------------------------+ ... +----------+-------+--------+
最後に、「このサイトはYY(EVIDENCE i)で実行されることをXX%で確信している」と言えるでしょう。
Wappalizerブラウザー拡張機能の他に、特定のWebサイトを強化するテクノロジーを検出するサイトがいくつかあります。
答えは「安心すること」は決してできないということです。 99.9%の確率で投票数の多い回答は、サイトの背後にあるフレームワークの「テル」を見つけますが、確実なことは決してありません。
基本的に、ブラウザはコード処理の最終結果を受け取ります。 (html、CSSおよびJavaScript)あなたとコード自体の間に、Webサーバー(nginx、Apacheなど)と、場合によってはロードバランサーとCDNが配置されます。あなたが直接相互作用していないので、確実な方法はありません。
Webサイトがwp-uploads /からのコンテンツを提供している場合/それが実行されていることは安全な賭けですWordpressしかし、確実ではありません。おそらく、サイトはWordpressを使用していましたが、それが別のものに移行されたとき、リンクとブックマークを壊さないようにwp-uploads /パスが保持されました。