Cookieとセッション管理を理解するための初心者向けガイド

(Tushar Verma )(2020年8月3日)

Cookieとは???

Cookieは通常、コンピュータに保存されているIDタグが付いた小さなテキストファイルです。ブラウザディレクトリまたはプログラムデータサブフォルダ。Cookieは、ブラウザを使用してCookieを使用するWebサイトにアクセスすると作成され、サイト内の動きを追跡し、中断したところから再開し、登録したログイン、テーマの選択、設定を記憶します。ウェブサイトは、ブラウザに設定したファイルに対応するファイル(同じIDタグを持つ)を保存し、このファイルに、サイト内の動きや自発的に提供した情報を追跡および保持できます。電子メールアドレスなどのWebサイトにアクセスしているとき。

たとえば、Amazon.inにアクセスしているときサムスン携帯電話を検索すると、これは閲覧履歴に記録されます。次にブラウザでAmazon.inを開くと、Cookieが閲覧履歴を読み取り、Amazonホームページにサムスン携帯電話が表示されます。

Cookieの機能???

安全なWebサイトでは、Cookieを使用して、ユーザーがページ間を閲覧するときにユーザーのIDを検証します。Cookieがない場合、すべての製品をカートに追加する前に、ログイン資格情報を入力する必要があります。ウィッシュリスト。Cookieの有効化と改善:

1-顧客のログイン
2-永続的なショッピングカート
3-ウィッシュリスト
4-製品の推奨事項
5-カスタムユーザーインターフェース
6-顧客の住所と支払い情報の保持

Cookieには次の5種類があります。-

1-セッションCookie-セッションCookieウェブサイトにアクセスしている間、ブラウザのサブフォルダに一時的に作成されます。サイトを離れると、セッションCookieは削除されます。

2-永続的なCookie-永続的なCookieファイルはブラウザのサブフォルダに残り、その特定のCookieを作成したWebサイトにアクセスすると再びアクティブになります。永続的なCookie Cookieのファイル内で設定された期間、ブラウザのサブフォルダに残ります。

3-サードパーティCookie-これらのCookieのブラウザアドレスバーに表示されるドメイン名ではないドメイン名によって設定されたCookie主にユーザーの閲覧パターンの追跡やユーザー向けの広告の推奨事項の検索に使用されます。

4-安全なCookie-安全なCookieは、暗号化された接続を介してのみ送信できます。Cookieは、追加することで安全になります。 Cookieへの安全なフラグ。セキュアフラグをサポートするブラウザは、リクエストがHTTPSページに送信されるときにのみセキュアフラグ付きのCookieを送信します。

5-HTTPのみのCookie-この特定のCookieには、次のユーザーのみがアクセスする必要があることをブラウザに通知します。サーバー。クライアントスクリプトからCookieにアクセスすることは固く禁じられています。これはセッションCookieの重要なセキュリティ保護です。

Cookieの作成:-

setcookie()関数は残りのHTTPヘッダーと一緒に送信されるCookie。開発者がCookieを作成する場合、関数 setcookie を使用して、彼は少なくとも3つの引数を指定する必要があります。これらの引数はsetcookie( name value 有効期限

Cookie属性:-

  1. 名前:

    Cookieの名前を指定します。

  2. 値:

    Cookieの値を指定します。

  3. Secure:は、Cookieを安全なHTTPS接続でのみ送信するかどうかを指定します。TRUEは、 Cookieは、安全な接続が存在する場合にのみ設定されます。デフォルトはFALSEです。
  4. ドメイン:

    はCookieのドメイン名。example.comのすべてのサブドメインでCookieを使用できるようにするには、ドメインを「xyz.com」に設定します。 www.xyz.com に設定すると、Cookieはwwwサブドメインでのみ使用できるようになります。

  5. Path:は、Cookieのサーバーパスを指定します。「/」に設定すると、Cookieはドメイン全体で使用できるようになります。「/ php /」に設定すると、Cookieはphpディレクトリとphpのすべてのサブディレクトリ内でのみ使用できます。デフォルト値は、Cookieが設定されている現在のディレクトリです。

  6. HTTPOnly: TRUEに設定すると、CookieはHTTPプロトコルを介してのみアクセス可能になります。この設定は、XSSによるIDの盗難を減らすのに役立ちます。攻撃。デフォルトはFALSEです。

セッションID

セッションIDは、Webサイトのサーバーが特定のユーザーの訪問中に特定のユーザーに割り当てる一意の番号です。セッションIDは、Cookie、フォームフィールド、またはURLとして保存できます。

説明:

画像ソース: http:// nikolaisammut .blogspot.com / 2012/04 / php-sessions-cookies.html

この画像には次の3つのコンポーネントがあります: HT TPクライアント

HTTPサーバー

および

データベース

(セッションIDを保持)。

ステップ1:クライアントはPOSTまたはGETを介してサーバーにリクエストを送信します。

ステップ2: Webサーバーで作成されたセッションID。サーバーはセッションIDをデータベースに保存し、set-cookie関数&を使用してセッションIDを応答としてクライアントブラウザーに送信します。

ステップ3:クライアントブラウザに保存されたセッションIDを持つCookieがサーバーに返送され、サーバーがデータベースからそれを照合し、HTTP 200OKとして応答を送信します。

セッション固定攻撃

セッション固定は、攻撃者が提供するセッションIDを使用して、攻撃者が被害者をだましてアプリケーションで認証させることができるWebアプリケーション攻撃です。 Session ハイジャックとは異なり、これはすでに認証されたユーザーのセッションIDを盗むことに依存しません。

In攻撃者が固定セッションIDを含むリンクを送信する簡単な方法で、被害者がリンクをクリックすると、被害者のセッションIDが修正されます。これは、攻撃者がセッションIDをすでに知っているため、セッションを簡単に乗っ取ることができるためです。

ターゲットシット:- https://unsecured.nwebsec.com/SessionFixation

ステップ1->ターゲットサイトへの攻撃ログオン彼の資格情報。

攻撃者のセッションID:-

ステップ2->固定セッションIDを含む攻撃者のリンク-

https://www.nwebsec.com/SessionSecurity/SessionFixation/SetDomainCookie?id=pzlaaw53lzbmhspousk00avb

ステップ3->攻撃者は被害者がクリックするとこのリンクを電子メールで送信できます与えられたリンクで彼のセッションi dは修正されます。

被害者がすでにリンクをクリックし、固定セッションIDのログインページにリダイレクトされていることがわかります。

被害者は攻撃者と同じセッションIDを持っていることがわかります。被害者と攻撃者のセッションIDは同じであるため、攻撃者はページを更新して被害者のすべての秘密を確認する必要があります。 。

お読みいただきありがとうございます

お問い合わせください

LinkedIn- www.linkedin.com/in / tushars25

Instagram- https://www.instagram.com/th3g3nt3lm4n/

Twitter- https://twitter.com/TH3G3NT3LM4N

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です