親バカエンジニアのナレッジ帳

webのエンジニアをやっており、日頃の開発で詰まったことや書き残しておきたいことを載せています。

セキュリティ

オンプレミス環境とは何か

オンプレミス環境とは クラウド環境との違い 選択は要件やニーズに基づいて決められる オンプレミス環境とは オンプレミス環境(オンプレミス、On-Premises)は、IT(情報技術)インフラストラクチャーやシステムが組織や企業自体の物理的な場所に設置・運用…

target="_blank"にはrel=noopenerを付けないと超怖い

target="_blank" rel="noopener"を付けないとどうなる? どんな場面で悪用されてしまうのか まとめ target="_blank" 外部ページへ遷移する際に使われるtarget="_blank"。 あまり知られていないのですが、そのまま使うと実はセキュリティ的なリスクをはらんで…

パスワード生成ツールが多すぎてウケる

パスワード生成ツールがなぜ使われるのか 「パスワード 生成」で検索すると... え?お前はどうなのかって? パスワード生成ツールがなぜ使われるのか 今の世の中、パスワードを設定する場面が多いですよね。 いろんなサービスで会員登録をしたりしますし。。…

Spring Boot のCORS対策

CORSとは? CORSの対策 Spring Bootでの対策 方法1 @CrossOriginアノテーション 方法2 Spring SecurityでCORSの設定をする方法 まずはSpring Securityのインストール WebSecurityConfigurerAdapterにCORSの設定 CORSとは? 通常Webページでは、同一生成元ポ…

ステートレスの場合のセッションハイジャック対策

セッションハイジャックとは セッションIDを使わなければ関係ないの? ステートレスのサイトでセッションハイジャックを防ぐには セッションハイジャックとは ハイジャックという言葉は、輸送機関などが強奪される時に使用される言葉ですが、web業界でも使用…

Nginxでリバースプロキシ設定をしている場合のLet's Encrypt設定

リバースプロキシを設定している場合でも、サーバを停止させずに更新できる リバースプロキシを設定している場合、通常通りcertbotコマンドを実行すると。。。 今回の対応内容 リバースプロキシを設定している場合でも、サーバを停止させずに更新できる 以前…

ブロックチェーンってなんだ?

ブロックとは?チェーンとは? ブロックチェーンはデータを分散して管理している P2Pって具体的になに?どこで動いてるの? すべてのデータは公開されて誰でも見ることができる ビットコインを始めとした仮想通貨の登場により、名前を聞くことが多くなったブ…

XSSってどうやって仕込まれる?

XSSについて どうやってタグを入れられる? GETパラメータにスクリプトを入れる方法 POSTでスクリプトを埋め込まれる方法 まとめ XSSについて このページを閲覧している方ならご存知とは思いますが、まずはXSSについて超簡単に説明します。この事象は入力フ…

SPAサイトのCSRF対策

CSRF対策について CSRFとは? CSRFによる被害 通常のCSRF対策 SPAサイトのCSRF対策 方法1 リファラで判断 方法2 ログイン時に発行したトークンを照合 方法3 CORSと組み合わせてOriginをチェック CSRF対策について CSRFとは? このページに来られた方ならもう…

ユーザにSFTPの特定ディレクトリのみ操作できる権限を付与

一般ユーザは、SFTPで特定のディレクトリのみしか触れないようにしたい ディレクトリの作成 ユーザとグループの作成 ディレクトリの権限変更 sshd_configを変更して操作権限を付与 まとめ 一般ユーザは、SFTPで特定のディレクトリのみしか触れないようにした…

SpringBoot 開発環境で簡単SSL対応

開発環境でもSSL対応をする理由 開発環境でのSSL対応方法 証明書の作成 SpringBootで証明書の設定 端末で証明書を信頼 本番環境のSSL対応は? 開発環境でもSSL対応をする理由 最近のwebアプリケーションでは、SSL対応させることが当たり前になっていますよね…

AWS(EC2)でセキュリティグループの設定方法

AWS(EC2)のセキュリティグループ 設定方法 AWS(EC2)のセキュリティグループ AWS(EC2)ではセキュリティグループというものを設定しますが、その名の通りセキュリティに関しての設定になります。 グループって何?って感じですが、設定したセキュリティは使い…