今さら聞けないセキュリティ 2021年07月18日

今さら聞けないセキュリティ 2021年07月18日

勇者と王様と企業のセキュリティ

# これはなに
企業のセキュリティをドラクエと比較して、セキュリティの立ち位置をなんとなく理解する。
(LT向けに作ったネタを文字だけにしているのでわかりにくい感じも)

# ドラクエをベースに考える
###勇者の目的
勇者の目的はなにか。「魔王を倒すこと」?
「魔王を倒すこと」は手段で、きっと目的は「世界を平和にすること」。

###王様の目的
「魔王を倒して平和を取り戻してくれ」
とこんぼうとたびびとのふくと 50G で勇者にアウトソースした王様の目的は、「国を繫栄させること」。

###目的は国を繫栄させること
目的が満たせるなら、魔王を倒す必要もなく、

– 静観する
– 魔族と手を組む

ということも手段の選択肢としてありなはず。(たいてい裏切られるけど)

# 企業にマッピングする
###セキュリティチームや情シスの目的
セキュリティチームや情シスの目的はなにか。「セキュリティ事故をなくすこと」?
「セキュリティ事故をなくすこと」は手段で、きっと目的は「会社を平和にすること」。

###社長の目的
「セキュリティ事故をなくして、健全な会社にしてくれ」
とセキュリティチーム

元記事を表示

PHPで連続アクセスの制限(同一のIPアドレスから等)総当り対策、F5アタック対策、DoS攻撃対策?

## 概要
* 同一の識別文字列(例:IPアドレス)から10秒間に10回あれば60秒アクセス制限をする。
* 同一の識別文字列(例:IPアドレス)から60秒間に30回あれば300秒アクセス制限をする。
* DoS攻撃対策、総当り対策、F5アタック対策としてコピペするだけで動作する。(はず。私の環境が環境がXAMPPなので?)
* 適切な関数名を募集しています。

> ** NOTE **
> DoS攻撃などを防ぐには、denyhostsやfail2banなどのミドルウェアやApacheとNginx等WEBサーバーでアクセス制限をしましょう。
> 本記事はミドルウェアレベルで設定ができない場合のアプリケーションレベルでの制限を目的としています。
>
> 同一の識別文字列という事で、同じログインユーザーを使用し別々の場所(IP)から同時に過度なアクセスがあった時に、ログインユーザーに一時的な利用制限をするなどを想定しています。
> …というとユーザーマスタに項目を持たせた方が適切ですよね?という話が出てくるかもしれませんが、その通りだと思います。ただ、ユーザーコードに限定しているわけでも

元記事を表示

自動車鍵の無線を遮断する

# 結論

リレー攻撃を防ぐために電波を遮断するきんちゃく袋を作ってもらった。

# 自動車盗難とリレー攻撃

先日、というかかなり以前に自動車窃盗団が、自動車から鍵が近辺にあるかどうかの電波をリレー(増幅)することで、不正に解除し盗難するというテレビのニュースを見た。

図式にするとこんな感じ。

![car01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/182822/b2b45264-5134-3f14-abc8-7e8d836e8adc.png)

大抵の人は自動車の鍵は玄関に置いてあるだろう(テレビドラマでもそうだし)。
家の庭に自動車が置いてあれば、不正行為者はそこから玄関まで電波を中継/リレーするということになる。

この不正行為は、電波を中継しているだけだからデジタル暗号技術/公開鍵認証技術も無力だろう。

# 自動車盗難とリレー攻撃の対策

対策となるのは、帰宅した際には、鍵は家の真ん中(中継した電波が届かないような)に置くとか、スノーデン氏がスマートフォンを冷蔵庫に保管したように、

元記事を表示

CSRFについて

# 目的
CSRFについて理解を深める。

# 目次

1. [はじめに](#はじめに)
1. [CSRFとは](#csrfとは)
1. [CSRFの対策](#csrfの対策)
1. [パスワードの再入力](#パスワードの再入力)
1. [リクエストへのトークン埋め込み](#リクエストへのトークン埋め込み)
1. [トークン](#トークン)

# はじめに

今回は、投稿やメールの送信、商品購入など、本来外部より実行されてはいけない重要な処理に対してのセキュリティ攻撃について理解を深めていきます!

# CSRFとは

`CSRF`とは、攻撃者がユーザーのログイン情報を盗み出すなど、正規利用者になりすましてリクエストを送る攻撃のこと指します。
なりすましのリクエストは不正なリクエストであり、この不正なリクエストを判別できないWebアプリケーションは、`CSRF`の脆弱性があると言えます。`CSRF`の脆弱性が存在すると、主に以下のような被害を受ける可能性があります。

– 利用者アカウントが不正利用される
– 利用者のパスワードやメールアドレスが変更される
– 利用者の所持している金銭

元記事を表示

セッションハイジャックについて

# 目的
セッションハイジャックについて理解を深める。

# 目次

1. [はじめに](#はじめに)
1. [セッションハイジャック](#セッションハイジャック)
1. [セッションID](#セッションid)
1. [セッションIDの推測](#セッションidの推測)
1. [セッションIDの盗み出し](#セッションidの盗み出し)
1. [SSL](#ssl)
1. [セッションIDの固定](#セッションidの固定)

# はじめに

今回は、XSSを用いた個人情報を盗み出すセキュリティ攻撃とその対策について理解を深めていきます!

# セッションハイジャック

`セッションハイジャック`とは、セッションが保存されているクッキーを狙った攻撃のことを指します。
具体的には、XSSなどを用いて、正規利用者ではない者が正規利用者のセッションを取得する攻撃手法です。
クッキーはセッションをセッションIDという識別番号を用いて保存しますが、このセッションIDを盗み出されると、セッションハイジャックが成立してしまいます。

# セッションID

`セッションID`とは、通信中の正規利用者へ付与さ

元記事を表示

ADFSサーバーでX-XSS-Protectionヘッターの設定

#はじめに
Windows ServerのADFSサービスですが、セキュリティ攻撃のターゲットになることが多く、セキュリティを管理している部門から各種設定を追加するようにといった要求が来ることがあります。ここでは、X-XSS-Protectionヘッタの設定方法に関して記述しています。
X-XSS-Protection ヘッターは、IE, Chrome, Safariの機能で、反射型クロスサイトスクリプティング (XSS) 攻撃を検出したときに、ページの読み込みを停止します。 本ヘッター設定は、最近のブラウザでは、不要ですが、古いブラウザに有効なため、セキュリティ監査で設定を要求される場合があります。

#事前確認
実行前に、ADFSサーバーアクセスした際にCSPヘッタが設定されていないことを確認します。
ブラウザ(chromeなど)を開き、F12キーをクリック、ネットワークのタブを選択します。続いて、ADFSのURLを開きます。

https:///adfs/ls/IdpInitiatedSignon.aspx

![キャプチャ.PNG](https://qiita-image-st

元記事を表示

最近のCTFのRev問を解いてデコンパイルの練習をしてみた

# 趣旨
デコンパイルの練習のため、最近(2022年7月時点)のCTFのRev問にいくつか取り組んでみました。rev問のほとんどは、入力を受け付けるプログラムが与えられ、適切な入力を渡すと成功を出力するというものです。プログラムのどこかに入力が正しいかどうかを判定する処理が実装されています。この処理を手動でデコンパイルしていきます。

CTF問題は、[CTF-archives](https://github.com/sajjadium/ctf-archives) で公開されているものを使用しました。ここにある最近のRev問を難易度を気にせず気ままに解いていきました。

# 所感
改めてRev問に取り組んでみて、何をやったら良いか分からないまま時間が過ぎていく、ということは殆どなかったのが印象的でした。出題の意図は明白で、(競技中に解答できるかはさておき)ひたすら時間をかければデコンパイルは可能で、デコンパイルさえできれば後は解を導くだけ、という感じです。

デコンパイル自体は何問かチャレンジしていくうちに速くなるかなと思いましたが、これくらいの練習量だと体感としてはあまり変わりませんで

元記事を表示

ADFS Windowsトランスポートエンドポイントの無効化方法

#はじめに
ADFSサーバーのWindowsトランスポートエンドポイントへのアクセス(Proxy)を無効化する方法に関して記載しています。ADFSサーバーのWindowsトランスポートエンドポイントですが、デフォルトインストールを行った場合、「有効」になっています。
この設定が有効となり、インターネットにADFS Proxy(WAP)などを利用して公開されている場合、インターネットから、NTLMログインを試行することができるるようになります。また、ADFSのロックアウト保護機構をバイパスすることができる可能性があります。

#外部にWindowsトランスポートエンドポイントが公開されていることを確認
 STSにアクセスしてエンドポイントが公開されているか確認します。公開されている場合、下記のような認証画面が表示されます。

 https://sts-servername/adfs/services/trust/2005/windowstransport

![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws

元記事を表示

ADFSサーバーでのHSTSヘッタの設定

#初めに
ADFSサーバーのセキュリティ監査などでHSTSヘッタの不備を指摘されることがあります。ADFSサーバーの場合、Webの認証トラフィックは、HTTPS経由で開かれるため、HSTSヘッタの設定がないこと自体は問題ないと考えられますが、セキュリティ監査では、ヘッタが返されることが監査のクリア条件などになることがあります。
本ドキュメントでは、HSTSヘッタ(HTTP Strict-Transport-Security)の設定手順に関して記載します。

#HSTSヘッターとは
HSTSヘッタは、HTTPとHTTPSの両方のエンドポイントを持つサービスにアクセスする際に必ずHTTPSアクセスを行い、HTTPでのアクセスを使用してはいけないこと宣言するヘッタです。

#事前確認
設定を行う前に、現在のADFSサービスのアクセスでHSTSヘッタ情報が含まれていないことを確認します。chromeなどを開きF12キークリックし、「ネットワーク」タブを開いてADFSサーバーの下記のURLにアクセスを行います。

https:// ADFSサーバーのURL/adfs/ls/IdpInitiate

元記事を表示

ADFSサーバーでCSPヘッターの設定

#はじめに
Windows ServerのADFSサービスですが、セキュリティ攻撃のターゲットになることが多く、セキュリティを管理している部門から各種設定を追加するようにといった要求が来ることがあります。
ここでは、Contents-Security-Policy(CSP)ヘッタ(以下 CSPヘッタ)の設定方法を記載します。

#事前確認
実行前に、ADFSサーバーアクセスした際にCSPヘッタが設定されていないことを確認します。
ブラウザ(chromeなど)を開き、F12キーをクリック、ネットワークのタブを選択します。続いて、ADFSのURLを開きます。

https:///adfs/ls/IdpInitiatedSignon.aspx

![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/526427/3bd742ff-79bd-1fe0-d7d1-70907535cf7d.png)

Response Headers に 「Contents-Security-P

元記事を表示

localStorage

### 記事一覧
* https://qiita.com/T-Tokumori/items/b531d2c8612747dabe1e
*

元記事を表示

hack the boxにwindowsあるんだ。

#概要

hack the boxにwindowsあるんだ。

#Active

https://qiita.com/v_avenger/items/48db7d54791c4d10663b

#Netmon

https://qiita.com/yukitsukai47/items/398d9026a8e4eac26c21

#Worker

https://qiita.com/v_avenger/items/dbf6d810283d70351a08

#Forest

https://qiita.com/zunil2_test/items/817c36f899b4fc3bf7bb

https://qiita.com/v_avenger/items/43014e5e34fe491764c8

https://qiita.com/mr-wacker/items/e165102bd5f1a4a6d22e

https://qiita.com/MarshMallow_sh/items/000650e63faeb2b8f266

#Starting Point

https://qiita

元記事を表示

セキュリティブログ検索、作った。

#概要

セキュリティブログ検索、作った。

#参考にしたページ

https://qiita.com/HirMtsd/items/7e5f7e93c694b6980860

#成果物

https://embed.plnkr.co/plunk/tFnJRIUc3xecDgWe

以上。

元記事を表示

URLやFQDNを入力したり、捕まえた検体をアップロードすると良さげに調べてくれる無料サイト(編集中)

URLやFQDNを入力したり、捕まえた検体をアップロードすると良さげに調べてくれる無料サイト(編集中)

https://www.virustotal.com/gui/

https://www.hybrid-analysis.com/

https://www.malwares.com/

https://www.threatminer.org

https://www.fortiguard.com

https://urlfiltering.paloaltonetworks.com/query/

https://www.brightcloud.com/tools/url-ip-lookup.php

https://urlcat.checkpoint.com/urlcat/main.htm

https://global.sitesafety.trendmicro.com/index.php

https://csi.forcepoint.com/

https://cfssupport.sonicwall.com/Support/servlet/CFSSupportServle

元記事を表示

main関数の3つ目の引数*envp[]で環境変数を取得する

## C 言語のmain関数の 3 つ目の引数 *envp[] について

今回は、C 言語でmain関数を定義する際に使用できる3つ目の引数についてまとめます。

先日、某CTFのデコンパイル結果を眺めていたところ、`int main(int argc, char *argv[], char *envp[]) `のように、引数を3つ取るmain関数に出会いました。

この3つ目の環境変数`*envp[]`は、C標準にて以下のように定義されており、実行環境の環境変数に対してのポインタが格納されるものであるようです。

>ホスト環境において、main 関数は第3引数 `char *envp[]` を取る。
>
>この引数は `char` へのポインタの null 終端配列を指す。`char` への各ポインタは、このプログラム実行環境に関する情報を提供する文字列を指す。

よく目にするC言語のmain関数は、以下のように2つの引数を取ります。

“` C
#include

int main(int argc, char *argv[]) {
printf(“

元記事を表示

CookieのPath属性は本当に安全性に寄与しないのか

# [追記] 今度こそ結論。Cookieこそ盗めなくなるが、Ajaxでなんとでもできるので寄与しない

なんと著者から反応がありました。それによると、別のパスからでもXHRやFetchで自由に操作できてしまうので、Cookieを盗むまでもなく被害者の権限で攻撃ができる、ので安全性には寄与しない、とのことです。

確かによく考えるとその通りです。Cookieを盗めるか盗めないか、という点ばかりに目を取られていました。

詳しくはこちらから。

https://qiita.com/ockeghem/items/6590b2e18af1d062e780

以下未修正ですのでご注意ください。

先日[体系的に学ぶ 安全なWebアプリケーションの作り方](https://www.sbcr.jp/product/4797393163/)を読んでいて、疑問をいだきました。

4.8.2 クッキーのセキュア属性不備の項で、CookieのPath属性について、

> Path属性を指定しても、安全性が高まるわけではないことに注意してください。その理由は、JavaScriptの同一オリジンポリ

元記事を表示

ユーザー登録不要(匿名)で、メッセージ履歴の残らない、Webチャットアプリ作りました

# Webチャットアプリ SuzumeChunChun

## 紹介

完全に匿名で、秘密・プライバシーを守ることができるチャットアプリです。

他言されたら困るけど何かを伝えなければいけない場合や、もし自分が監視されているような状況にあるなど(?)、そんな場合に役に立つアプリだと思います。多分ジャーナリズム(?)なんかのために役に立つんじゃないかと勝手に思ってます。

スパイ映画などで、爆発する指令書が登場するシーンがありますが、爆発する指令書を作るより、このwebアプリを使った方が手軽に秘密を守ってメッセージが送信できます。

まだベータ版ですが、通常利用する範囲では、十分機能するはずです。

https://suzumechunchun.com

(サーバーがアメリカだからか、JavaScriptファイルが大きいからか、速度が少し遅く感じます。すいません!!)

– ユーザー登録が不要なので、個人情報は何も収集しません。
– メッセージの暗号化はブラウザ上で行われます。
– メッセージはサーバー上には一切保存されません。ブラウザ上で表示されて、一定期間後に自動的に削除されます

元記事を表示

ASLRの有効bit数

32bitOSにおいてASLRは16bit分しか提供しない といった旨の記述がReturn-to-libc攻撃のwikipediaに書いてあり、理由が気になったので雑にメモ。
2通りで調べたのでそれぞれ書きます。

1. まず、英語版の出典はスタンフォードの論文pdfでした。
この3.3.2によれば、32bitのうち12bitはオフセットに(後述)、残り20bitのうち、4bitは仮想メモリ空間のフラグメンテーションを防ぐためにランダム化できないため、残りの16bit分のみASLRが提供される とのこと。 (これは最大16ということで、実際は12bitなども見られるようで….)
64bitOS上の32bit互換で実行する場合も同様に脆弱であると述べてあります。
64bitOSにおいては最低でも40bitがランダム化されるとのことです。

2. また、32bitOS(x86)のメモリ管理の観点から、まずセグメント方式について知る必要がありそうだと考えました。 結果として間違いではありませんでしたが….
元々、ASLRは12bitに働いていたという検証も見ており、セグメントのリアル

元記事を表示

Hack The Box ウォークスルー:Shocker

今日のターゲットは、Shockerです!ショッカー!
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1664788/8b993a80-6fea-2cec-e90e-4dedc59d3257.png)
– OS: Linux
– Difficulty: Easy

仮面ライダーシリーズに登場するあの雑魚キャラですね(違いますw)
ショッカーをしらない世代の方も多いと思いますが、いつもの通り、ポートスキャンから実施していきましょう!

# # PortScan
今日はちょっとめんどうだったので、ざくっと -A(アグレッシブスキャン)を実施します。
アグレッシブスキャンは強力ですね。

何も考えずに、-A を付けるだけで、通常のデフォルトスキャンの他に、バージョンスキャン(-sV)やOSスキャン(-O)、スクリプトスキャン(-C)などを実施してくれます。
ポートスキャンの実行結果は、以下感じです。

“`
┌──(kali㉿kali)-[~]
└─$ sudo nmap -n 10.10.1

元記事を表示

Hack The Box とは

# ペネトレ王にオレはなる!からの大海原ヘドーン!

はい、今日は、私が大好きな Hack The Box(HTB)を紹介します!
(と、今日がはじめてのQiita投稿です。何卒よろしくお願いします。)

Hack The Boxは、サイバーセキュリティやペネトレーションテスト(ペネトレ)に関するスキルを身に付けたい人が、そのスキル向上のために活用できる世界最高の学習プラットフォームです。

なにが最高かというと、とにかく楽しいです!!
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/112588/4bdf030b-d4a8-508f-4b9a-324d375a502b.png)

~~ハッキング技術~~(← 誤解を生む場合があるので自粛) ペネトレーションテストの技術を楽しく学べて、自己成長も体感できます。また、知識とスキルを仕事に生かすこともできるので、一流のペンテスター(ペネトレをする人=スーパーハッカー)になれば、お金もガッポガッポ稼げる、はず!(たぶん。きっと。願望!)

はい、

元記事を表示

OTHERカテゴリの最新記事