インタビューの質問シリーズ:侵入テスト-2の一般的な質問

26.シェルの場合、xssを使用してターゲットステーションを長期間制御する方法を教えてください。

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

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

27.管理者パスワードを変更するためのバックグラウンドで、元のパスワードは*として表示されます。ユーザーのパスワードはどのように読み取られるべきだと思いますか?

review要素は、パスワードのパスワード属性をテキストに変更し、プレーンテキストで表示されます

28.ターゲットステーションは保護されておらず、アップロードされた画像には通常どおりアクセスできます403.アップロードスクリプト形式でアクセスする理由は何ですか?

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

29. review要素は、Webサイトで使用されている保護ソフトウェアを学びましたが、どのように行われたと思いますか?

機密性の高い操作が傍受され、インターフェイス情報を使用して特定の保護を判断できない場合、F12はガーディアンなどのHTML本文を調べることで、名前のコンテンツを確認できます。

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

管理者がアップロードしたツールを発見できないようにするための隠しフォルダー。

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

A. demo.jsp?id = 2 + 1

B. demo.jsp?id = 2-1

URLエンコーディングでBを選択します+はスペースを表し、混乱を招く可能性があります

32.次のリンクにはSQLインジェクションの脆弱性があります。このバリアントインジェクションについてどう思いますか?

demo.do?DATA=AjAxNg==

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

33. demo.jsp?uid = 110のインジェクションポイントを見つけました。webshel​​lを取得するためにどのような種類のアイデアが必要ですか?これは最高ですか?

書き込み権限がある場合は、INTO OUTFILEを使用して共同クエリステートメントを作成し、クエリの出力をシステム内のファイルにリダイレクトして、WebShellに書き込むことができます。sqlmap-os-shellを使用する原理は、直接取得するための上記のものと同じです。より効率的なシェル。共同クエリステートメントを作成してWebサイト管理者のアカウントとパスワードを取得し、バックグラウンドをスキャンしてバックグラウンドにログインしてから、パッケージを変更してアップロードすることにより、シェルをバックグラウンドでアップロードします。

34. CSRFとXSSおよびXXEの違いは何ですか、またどのように修正しますか?

XSSはクロスサイトスクリプティング攻撃であり、ユーザーから送信されたデータ内で、コードを作成して実行することにより、ユーザー情報の盗用などの攻撃を実現できます。修復方法:文字エンティティをエスケープし、HTTPのみを使用してJavaScriptによるCookie値の読み取りを禁止し、入力時に確認し、ブラウザーとWebアプリケーションに同じ文字エンコードを使用します。

CSRFはクロスサイトリクエストフォージェリ攻撃であり、XSSは、キー操作の実行中にユーザーが自発的に開始したかどうかを確認しないため、CSRFを達成するための多くの手段の1つです。修復方法:CSRFから保護する必要のあるページを選別し、トークンを埋め込み、パスワードを再度入力し、Referer XXEがXML外部エンティティインジェクション攻撃であることを確認します。XMLでは、リモートファイル保護と同様に、エンティティを呼び出してローカルまたはリモートコンテンツをリクエストできます。機密ファイルの読み取りなどのセキュリティ問題。修復方法:XML解析ライブラリは、呼び出し時の外部エンティティの解析を厳密に禁止します。

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

CSRFはクロスサイトリクエストフォージェリ攻撃です。クライアントが開始したSSRFはサーバー側のリクエストフォージェリです。サーバーが開始したリプレイ攻撃は、傍受したデータパケットをリプレイしてID認証などの目的を達成することです。

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

パスワード取得の脆弱性が存在します

1)パスワードはブルートフォースクラッキングを可能にし、

2)汎用の取得証明書があります。

3)確認手順をスキップできます。

4)証明書を取得するには、パッケージをブロックします。

パスワードは、メーカー提供のパスワード取得機能で取得できます。最も一般的な認証の脆弱性

1)セッション固定攻撃

2)クッキーの偽造

セッションまたはCookieを取得している限り、ユーザーIDを偽造できます。確認コードの脆弱性が存在します

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

2)検証コードは、Javascriptまたはパッケージの変更を通じてバイパスできます

37.次の会話で問題が発生する可能性がある項目に丸を付け、考えられる問題をマークしてください。

get /ecskins/demo.jsp?uid=2016031900&keyword=”hello world” HTTP / 1.1Host:.com:82User-Agent:Mozilla / 5.0 Firefox / 40Accept:text / css、/; q = 0.1Accept-Language:zh- CN; zh; q = 0.8; en-US; q = 0.5、en; q = 0.3Referer:http:// .com / eciop / orderForCC / cgtListForCC.htm?zone = 11370601&v = 145902Cookie:myguid1234567890 = 1349db5fe50c372c3d995709f54c273d; uniqueserid = session_OGRMIFIYJHAH5_HZRQOZAMHJ; st_uid = N90PLYHLZGJXI-NX01VPUF46W; status = TrueConnection:keep-alive

書き込み権限がある場合は、INTO OUTFILEを使用して共同クエリステートメントを作成し、クエリの出力をシステム内のファイルにリダイレクトして、WebShellに書き込むことができます。sqlmap-os-shellを使用する原理は、直接取得するための上記のものと同じです。より効率的なシェル。共同クエリステートメントを作成してWebサイト管理者のアカウントとパスワードを取得し、バックグラウンドをスキャンしてバックグラウンドにログインしてから、パッケージを変更してアップロードすることにより、シェルをバックグラウンドでアップロードします。

38.ウェブサイトを教えてください、どのようにして侵入テストを行いましたか?書面による許可を取得することを前提としています。

39. sqlmap、注入ポイントを挿入する方法は?

1)getモデルの場合、直接、sqlmap -u "dot URLなど"。

2)ポイントなどの投稿タイプの場合は、sqlmap -u "ポイントURLを挿入" --data = "post parameter"

3)Cookie、X-Forwarded-Forなどの場合、アクセスできる場合は、burpsuiteを使用してパケットをキャプチャし、注入場所を番号に置き換えて、ファイルに入れてから、sqlmap -r "file address"

40. nmap、スキャンするいくつかの方法

41.いくつかのタイプのSQLインジェクション?

1)エラー挿入

2)ブール型注入

3)遅延注入

4)ワイドバイトインジェクション

42.エラー報告で挿入される関数は何ですか?10

1)とextractvalue(1、concat(0x7e、(select @@ version)、0x7e))】】】】2)通してフロアを介して方向下取整3)+とupdatexml(1、concat(0x7e、(secect @@ version )、0x7e)、1)4).geometrycollection()select where test where id = 1 and geometrycollection((select from(selectfrom(select user())a)b)); 5).multipoint()select from test where id = 1およびmultipoint((select from(select from(select user())a)b)); 6).polygon()select from test where id = 1 and polygon((select from(select from(select user( ))a)b)); 7).multipolygon()select from test where id = 1 and multipolygon((select from(select from(select user())a)b)); 8).linestring()select from test where id = 1およびlinestring((select from(select from(select user())a)b)); 9).multilinestring()select from test where id = 1およびmultilinestring((select from(select from(select user())a)b)); 10).exp()select from test where id = 1 and exp(〜(select * from(select user())a));

43.遅延注射の判断方法は?

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

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

キャラクター判断によるキャラクター

45.ウェブサイトのウェブシェルを取得するには?アップロード、バックグラウンド編集テンプレート、SQLインジェクション書き込みファイル、コマンド実行、コード実行、dedecmsバックグラウンドが直接スクリプトファイルを作成する可能性のある、いくつかのCMSの脆弱性、WordPressアップロードプラグインにスクリプトファイルのzip圧縮パッケージなどが含まれる

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

select「1つの文」をoutfile「パス」に選択「1つの文」をdumpfile「パス」に選択「select」<?php eval($ _ POST [1])?>」をdumpfile'd:\ wwwroot \ baidu.com \ nvhack。 php ';

47. CSRFを防ぐには?

1)リファラーを確認する

2)トークンを確認する

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

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

1)SQLインジェクション保護方式:

2)無効なID認証とセッション管理

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

4)安全でないオブジェクトを直接参照する

5)セキュリティ構成エラー

6)機密情報の漏洩

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

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

9)既知の脆弱性を持つコンポーネントを使用する

10)未確認のリダイレクトと転送

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

1)安全なAPIを使用する

2)入力された特殊文字をエスケープする

3)ホワイトリストを使用して入力検証方法を標準化する

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

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

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

1)コード実行:

eval、preg_replace + / e、assert、call_user_func、call_user_func_array、create_function

2)ファイルの読み取り:

file_get_contents()、highlight_file()、fopen()、read

file()、fread()、fgetss()、fgets()、parse_ini_file()、show_source()、file()など。3)コマンド実行:

system()、exec()、shell_exec()、passthru()、pcntl_exec()、popen()、proc_open()

おすすめ

転載: blog.csdn.net/GUDUzhongliang/article/details/108659540