18
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Udemyでハッカーにセキュリティを学ぶ

Last updated at Posted at 2024-12-17

ハッカーが講師

ハッカーです。

image.png

udemy講座の講師ページより引用。

怪しい?

通常の講座なら、違和感をもちますが、ホワイトハッカーの講座なので逆に信頼度が増している気がします。

実際、CEHやCNDというセキュリティの難関資格を取得されているようで、信頼できますね。

この講座です。

ホワイトハッカー入門したあと、私は以下のような記事を読んで、以前よりも、理解できるようになりました。

Twillo blog インシデントのご報告〜Twilio従業員およびお客様のアカウント情報流出について〜2022年8月4日

確実に実力になります。

終えると。。

カリスマ講師からも祝福していただけます。

image (1).png

インフラの勉強にもなる

インフラの勉強にもなる、という観点でこちらでも記載しました。
セキュリティの勉強を通してインフラを学べますので、IT知識全体の底上げにもおすすめです。

この知識を土台にしてAWSのSecurity Specialtyの資格にも合格しました。
ここで出てくるCVEといった用語は、AWS SAAの試験でも出てきますね。

ぜひみなさんも、この講座を視聴して、冬休みに楽しく知識を深めてください。

以下視聴した内容のメモです。
用語リストとして、講座の復習の際などにご活用ください。

各セクションのまとめ

sextion2 情報セキュリティとホワイトハッカー

【情報セキュリティとホワイトハッカー】

・ハッカー種類その1

ブラックハット 悪用
ホワイトハット 守る
グレーハット 悪用と守ると、行き来するハッカー

・その2

サイバーテロリスト
ハクティビスト・・・政治的や、宗教など、自らの主義主張を他に知らしめるのを目的とする。
国営ハッカー・・・state sponserd hacker 公的に雇われているハッカー

・その3

スーサイドハッカー・・・自殺型。目的を追求するためには、自分が投獄されたりすることを厭わないハッカー
スクリプトキディ【script kiddy】・・・スキルが低い。人が作ったものを単に使って攻撃。
本講座を暗記しただけじゃなく、応用できるようにして、スクリプトキディなホワイトハッカー
にならないようにしよう。

【情報セキュリティの基礎】

セキュリティの3大要件
Confidentiality 機密性 鍵がかかり鍵がないと開けることができない
Integrity 完全性 宝箱の中身を入れ替えられていない
Availability 可用性 鍵を持った人は開けることができる
宝物を守る!
セキュリティの構成要素
情報資産

物理
ネットワーク
ホスト
アプリケーション

・セキュリティポリシー

組織が情報セキュリティのために何を行うか、どこまで行うかを明確にしたもの。

・優先順位

法律>規制>ポリシー>基準・企画>実践・手順ガイドライン
基準・規格 業界やシステムなどの規格を採用するための価値観

・セキュリティポリシーを実現させるために、

文書化し、全関係者に公開し、納得させ、適切なトレーニングを行う。
そして、適切にセキュリティレベルが保たれているか定期的に検証し、評価しなければならない。

・セキュリティの検証と評価

リスク=脅威+脆弱性+影響
脅威=脆弱性+攻撃
脆弱性
脆弱性はすべてに要素として入ってくるので、その評価は不可欠。

【情報セキュリティの防御】

予防フェーズ
運用フェーズ
対処フェーズ

・ネットワークファイアーウォール

ネットワーク境界で出入りする通信情報を管理する。
判断基準はパケットヘッダの情報となる。
あらかじめ定めたルールにおいて制御する。
TCP/IPモデル(OSI参照モデル)→ファイアーウォールアーキテクチャ
アプリケーション層(アプリケーション層、プレゼンテーション層、セッション層)→アプリケーションレベルファイアーウォール
トランスポート層(トランスポート層)→サーキットレベルゲートウェイファイアーウォール
インターネットそう(ネットワーク層)→パケットフィルタリング
ネットワークアクセス層(データリンク層、物理層)→MACフィルタリング
全てに対応する→ステートフルマルチレイヤインスペクションファイアーウォール
今出ている製品のほとんどはこっち。

・IDS/IPS

IDS(Intrusion Detection System)
IPS(Intrusion Prevention System)
IDSは侵入の検出のみ、IPSは侵入を検出し、防止する。
ネットワーク監視型とホスト監視型がある。
ネットワーク型
ネットワークに流れるパケットを解析し、新入の兆候を探す。
リアルタイムパケット監視
手法:シグネチャ、異常検出、プロトコル異常検出
対策効果:一部のポートスキャン、一部のDos攻撃、既知の攻撃
ホスト型
ホストのファイルの変動を監視
入出力監視、整合性チェック、ログ監視
手法:シグネチャ、比較検出
対策効果:Web改ざん

・UTM

Unified Threat Managementの略
複数のセキュリティ検知技術を統合管理する
上記の機能を持ったシステム・アプライアンス製品

・WAF

Web Application Firewallの略
WEBAP攻撃検知に特化
基本的にHTTPリクエストを監視
シグネチャベースが主だが、最近はインテリジェンス型や学習型もある。

・サンドボックス・ハニーポット

攻撃しやすいサーバをあらかじめ設置し、攻撃者に攻撃させる。
攻撃者の誘い込み、攻撃者の追跡、攻撃者の手法解析、学習機能へのフィードバック

・False positive,False negative

False Positive・・・誤検知、過剰検知
問題:処理コストの増大、重大事案の見落とし
誘引:不適切なチューニングを誘引
False Negative・・・見落とし
問題:基本的にあってはならない
誘引:シグネチャの不備

・対処フェーズ

IH&R(incident handling and response)
迅速かつ効率的にセキュリティインシデントを特定し、
阻止、回復させる。

【ハッキングの手法】

CEHによるハッキングフェーズの区分
偵察、スキャニング、アクセス権の取得、アクセスの維持、痕跡の消去

section3 情報収集概論

【情報収集の目的】

攻撃するために必要な情報を集める
・公開されている情報から
・直接アクセスして
・検索エンジンを使って
・ソーシャルエンジニアリングを駆使して

【情報収集手法の分類】

偵察 ・・・公開されている情報を中心に収集する Reconnaissance
ドメイン、URL、ネットワーク情報、ホームページ、所在地、電話番号、役員名簿、株式情報、公開されているメールアドレス、社員の風呂づやSNS
スキャニング・・・偵察フェーズで得られた情報を元に、ネットワークやサーバに直接アクセスして、情報を収集する。
ネットワーク内で稼働しているサーバー、サーバーが提供しているサービス、サーバーのOSやアプリケーション、認証機能の有無、有効なアカウント
の二つのフェーズ

【列挙】

列挙 Enumeration

実際の手順の中では、下記のように繰り返される。
偵察→列挙→スキャニング→アクセス権の取得
列挙から偵察や、スキャニングから列挙へと繰り返し戻りながら、
進める。

列挙の例

・ターゲットが使用しているIPレンジが判った。
スキャニングの前に稼働しているIPアドレスを列挙
・認証サービスが動いている
有効なログインアカウントを列挙
・そのほか
生きているIPアドレス
サブドメイン
有効なユーザーアカウント
例。
ユーザー名 〇〇→パスワードが違います
ユーザー名 XX→ユーザー名が違います。
不適切なエラーメッセージによって有効なユーザーアカウントが列挙される問題
有効なアカウント〇〇を検索
個人のブログやSNSのページを発見
プロフィール情報などから下記のような情報を取得
生年月日、出身学校、ペットの名前、車のナンバー
→パスワードに使われたり、秘密の質問に使われやすい
・知りえた情報をパスワードクラック用の辞書に追加
・有効なメールアドレスの列挙
メールアドレスの@ドメインの前は、システムのログインアカウントである可能性が高い。

section 4 偵察技術

【偵察技術】

ターゲットが自分から公開している情報

・whoisというサイトで でドメイン検索できる。

・JPNICのWHOIS Gatewayを使う

ネットワーク情報を検索するには、IPアドレスが必要。
公開されているサーバならば、自分のマシンから逆引き可能。→nslookup

・IPアドレス範囲はターゲットが自分で取得していない場合、上位プロバイダの値なので注意

・JPアドレス以外はそれぞれの国のNICのWHOISを使うのだが、サービスとして提供しているサイトもある。

【DNSからの情報収集】

・現在はDNSからは情報はほとんど得られない。

昔はIPアドレス一覧とかを取得できた。
取得したDNSサーバが動いているか
取得したIPアドレス範囲の中に公開されているサーバはあるか。

・DNSサーバは動いているか

nslookupだと自分のDNSサーバに接続されてしまう。
nslookup 取得したDNSサーバーのアドレス

・現在、指定したDNSサーバは管轄しているドメインの情報しか返さないのが仕様

・取得したIPアドレス範囲の中に公開されているサーバはあるか。

nslookup DNSサーバ
これで指定したDNSサーバに接続。
接続したら取得したIPアドレスを一つ一つチェックしていく。
IPアドレスの下一桁を変えて、155回試す。

・現在はDNSからの情報収集は効率がよくない。現在はls -dなどの手法は現在はとれず、ナンセンス。

【検索エンジンの活用】

・Google検索テクニック

①AND検索
検索語句1 検索語句2
②OR検索
検索語句1 OR 検索語句2
③()の仕様
検索語句1 (検索語句2 OR 検索語句3)
④とは検索
⑤除外
検索したい語句 -除外したい語句
⑥検索語句*検索語句
⑦フレーズ検索
"検索語句"
最近の検索エンジンは広く出してくれるけど、
こうすることで厳密に含まれるものだけ抽出。
⑧サイト内検索
site:サイトTOPのURL 検索語句
⑨タイトル検索
intitle:検索語句
⑩本文内検索
intext:検索語句
⑪URL検索
inurl:検索語句
⑫リンク検索
link:検索語句
⑬ファイルタイプ検索
filetype:ファイル拡張子 検索語句
PDFでよく使う。
⑭キャッシュ検索
cache:URLからhttp://を除く
⑮インフォ検索
info:URLからhttp://を除く
⑯関連検索
related:URL
⑰複数の語句を指定したい場合は
allコマンド:検索語句1 検索語句2

・ハッキングの情報収集

例.ターゲットのドメインで公開されているメールアドレスを知りたい
検索結果の件数を見て、絞れているか、を見る。
"@blksmith.jp"
かなり絞りこめる。

【SNSを利用した情報収集】

・SNS(Facebookやtwitter)は非常に有効な情報ソース

section5 スキャニング技術

【サーバの特定】

・偵察で入手した情報

 ・ターゲットのIPアドレス使用レンジ
 ・その中からIPアドレスを探す

・pingコマンドの利用

 ・ICMPのECHO_REQUESTを送り、サーバからICMP_ECHO_RESPONSEを引き出す
windows : ping target_ip
linux : ping -c 回数 target_ip
・IPの数が多いとちょっと大変
・自分でプログラムを書く方法もあるが・・・
・Ping Sweep
・IPアドレスの範囲に対して行える。
・専用のツールを使う
・nmapを使用する例
nmap -sn -PE ターゲットのIP範囲
・サブネットマスクで指定
192.168.0.0/24
・実数で範囲を指定
192.168.0.0-255
・ワイルドカードで指定
192.168.0.*
サブネットマスク・・・ネットワークの範囲を定義するために使用
https://www.ahref.org/doc/ipsubnet.html
例./24 255.255.255.0 256
・ICMPの注意事項
ICMP・・・ICMP ( Internet Control Message Protocol )とは、TCP/IPでネットワークの疎通がされているノード(サーバー、ネットワーク機器、PCなど)間で、
通信状態の確認をするために使われるプロトコルです。
ICMPはネットワーク探索で使われる
ターゲットによってはICMPを制限(ハッカーの間ではポピュラーな手法であるため)
→その場合の手法は、
偵察ではなく「スキャニングになる」
全ての稼働サーバであるかの信頼性

【ネットワークトポロジ】

・ネットワークトポロジ・・・ネットワーク上に端末がどのような形態で接続されているかを表す用語
・インターネット
 ツリートポロジとリニアバスの複合
 指定したターゲットまで各ルータを経由
・ターゲット内の各サーバまでの経由ルートを調べることで
ターゲットのネットワーク構成を推測する。
(物理的なトポロジではなく、論理的なトポロジ)
・接続ルートの探索コマンド
 windows : tracert -d target_ip デフォルトでICMP
linux : traceroute -n target_ip デフォルトでUDP
リナックスは-lでICMPも可能。
・境界のルータや、FWの位置が掴めてくる。
・管理している別のネットワークがある場合、そっちから再度tracerootする
→ロードバランサーの有無や、内部IPアドレスが出ているとその部分はバーチャルサーバーで
あると推測できるなど。
・境界ルータやFWがわかれば、迂回の方法が考察できる
・物理的な構成がわかれば、影響範囲がわかる

【スキャニング手法】

・ターゲットサーバが稼働している
 オープンポート=稼働しているサービス
ポートスキャンという手法
・ポートが開いているかどうかはつないでみればいい
 ポートの数は65535個
 ウェルノウンポートだけでも1024個
 つなぐとログに残る
→ポートスキャンツールを使う
・代表的なポートスキャンツール
 Nmap(Zenmap) http://nmap.org
Hping2/Hping3 http://hping.org
 接続スキャン(Connect Scan)
メリット:指定したポートに次々に繋いでいくことによってオープンポートを確定する
      信頼性が高い
  デメリット:ログに残る
・ログ:時間の集中や、不審な接続元、度重なるログインエラー
→これにより管理者にポートスキャンを疑われてしまう。
・Synスキャン(syn scan)
ステルススキャン、ハーフポートオープンスキャンともいわれる
信頼性が高い
復習:3way Hand Shake ・・・TCP接続の基本
接続元 ①syn 接続先
②syn/SCK
③ACK この3回のやり取りで接続が確立する。
③で、ログに残る。
ハッカーは気づく(③のACKまで行かなくても接続確認はできるじゃん。)
強制的に切断(RSTと呼ばれる)→ログに残らずポートの空を確認できる→Synスキャン

【TCPクローズポートスキャン】

 アイデア:接続開始時の、SYNフラグをつけたパケットを投げるがそれ以外のパケットを投げたらどうなるか?
・NULLスキャン・・・最初にNoneを送る
・FINスキャン・・・最初にFINを送る
・X'masスキャン・・・最初にFIN,URG,PUSHを送る
 手法・クローズドポートを特定する
それ以外はオープン
全てのポートを調査する必要がある
レスポンスがない=オープンではない
OSによって実装が異なる
・ACKスキャン
・ACKフラグを立てたパケットを送信
・返答のRSTパケットを分析して判断
・ポートよりも、ポートがフィルタリングされているか=FireWallの有無を調べることも可能
・Idleスキャン
・フラグメント識別番号(IPID)を利用して身元を隠しながら行えるテクニック
・ハッカー、ターゲット、ゾンビの3つ。
①ゾンビにSYN/ACKを投げる。RST IPID=1が帰ってくる
②帰ってきたIPIDを解析。ZombieIPID=1であることを確定
③SYN接続元IPをゾンビのものにしてターゲットに投げる。
④ポートが閉じている場合。何も起きない。
開いている場合。ゾンビに、SYN/ACKを返す。しかし、覚えがないので、RST IPIDを返す
⑤再度ハッカーがゾンビにSYN/ACKを送る。
⑥ターゲットがオープンだった場合 IPID=3
 ターゲットがクローズだった場合 IPID=2
2個増えていたら、ポートが開いている!
 Idleスキャンを成功させるポイント
・ゾンビマシンの選定が重要
・IPIDはパケットを送るたびに増える
・パケットを頻繁に送っているマシンは駄目
・ターゲットにログが残る可能性は低いがもしも残ってもゾンビマシンのもの

【UDPスキャン】

接続元から接続要求空いてたら、何も返さない
開いてなかったら、ICMP port Unreachable

【リストスキャン】

与えられたIP範囲の名前を解決して返す
DNSでの情報収集の変わりに使える。

【実際にNmapでのポートスキャンを実行】

nmap オプション ターゲット
よく使うオプション
-O OSを調べる
-n 名前解決しない
-Pn pingを打たない。
ウェルノウンポート:0-1023

【スキャニングまとめ】

・スキャニング手法は先人たちの知恵と工夫が凝縮されている
・ハッカーとはどのように考えるのかを学ぶのに適している。

【サーバのフットプリンティング】

・サービスを行っているホストの情報を収集
可能であればホストのOSを特定
ポートスキャンの結果のIPアドレス、オープンポートの情報を使う
一般的なサービスはtelnetでアクセス可能
telnet IPadress portNumber
サービスの種類とバージョンが欲しい。
多くはバナーと呼ばれる情報
→バナーはハッキングにおいて有力な情報
・telnetでアクセスするだけでバナーが出るサービスの例
ftp 21/tcp
ssh 22/tcp
telnet 23/tcp
smtp 25/tcp
pop3 110/tcp
繋いだだけではバナーが出ない
http 80/tcp
ssl 443/tcp
・hhtpでのバナー確認方法
telnetでつないだ後に
HEAD/HTTP/1.0(改行キー2回押す)
・sslでのバナー確認方法
openssl s_client -host IPadress -port port番号
 その後httpと同様
・集まった情報からOSを推測
webサーバがIIS→Windows IISのversionからwindowsバージョンまでわかる。
・便利なバナー収集方法
専用ツールを使う
・nmap の -sVオプション
・-sVはスキャンテクニックのオプション
・スキャン手法はSynスキャン
・バナー情報を同時に収集する
・-Oオプション OSを調べる
 ツールだと、情報量が減る場合、増える場合があるので、
ペネトレーションテストにおいては、ツール、手動、両方を使う。
・さらなる情報
サービスによってはこの段階で更なる調査が可能なものがある。
①smtpの列挙の可能性と脆弱性の有無
②sslの使用暗号スイート脆弱性

【脆弱性情報の収集】

脆弱性のデータベースがある。
・CVE(common vulnerabilities and Exposures)
・共通脆弱性識別子
情報セキュリティにおける脆弱性やインシデントに固有の番号をつkて共有する仕組み
米国政府の支援を受けた非営利団体のMITREが採番している。
・CVEの見方 CVE-2017-13001
CAN (candidate)脆弱性の可能性
CVE 確定した脆弱性
2017 報告があった(確定した)年
13001 連番
・NVD
 National Vulnerability Database
米国国立標準技術研究所(NIST)が管理している脆弱性データベース
CVSS(Common Vulnerability Scoring System)という危険度の祭典がある。
・JVN
Japan Valunerability Notes
日本で使用されているソフトウェアなどの脆弱性関連情報と
その対策情報を提供し、情報セキュリティ対策に資することを目的とする。
・JVN iPedia
JVNは早期周知、JVN iPedia は蓄積と共有
CVSSの採用
・SecurityFocus
セキュリティに関するメーリングリストの草分け、Bugtraqの運営元
このサイトにはExploitが公開されている。
CVEでの検索も可能
・Rapid7 Exploit Database
Metasploitのモジュール検索および脆弱性
脆弱性の情報にはCVE,CVSSも含まれる
モジュールの使用法も載っている
ホワイトハッカーとしての脆弱法の情報収集には静的

視聴当時のメモ

・サーバの特定のためにサブネットマスクを指定する方法からサブネットマスクに対する理解が深まった。
pingがICMPを使っているので、ICMPを制限している場合は、pingでの偵察が使えない話で、
ping がはじかれても必ずしも通信できないとは限らないという、サーバー作業時の経験則の、
裏付けができた。
TCPスキャンとUDPスキャンの説明を聞くことで、二つの通信方式の違いを理解できた。
・実際にNmapでスキャンし、telnetでアクセスする様子を見せてくれて、圧巻だった。
・ハッキングにおいてOSが何か?は重要な情報なので、
そういう観点でも、SREでインフラの構成を聞いてきて、
お客様に構成を伝えていいですか?って聞いてくるのは、
ナンセンスだと思った。
・よくTSDで、脆弱性があるからWASのFixpack当てて?とかよくあったが、
こういう既知の脆弱性データベースとかを見て、担当者が依頼してきているのかなと想像できた。

section6 サーバーへの攻撃

【認証システムの突破】

認証システムが動いている
ftp 21/tcp
ssh 22/tcp
pop3 110/tcp
認証の基礎知識
認証の要素と多要素認証
知識要素
持物要素
生体要素
パスワード認証
これは知識要素のみの短要素認証
パスワードクラック
総当たり(ブルートフォース)
推測
辞書
パスワードクラック
認証画面にて直接
パスワードファイルを取得
レインボーテーブル攻撃
レインボーテーブル攻撃
パスワードファイル内に保管されているパスワード
辞書の語句をシステムと同じ方法で暗号化し、比較
ツール
THC-Hydra ヒドラと呼ばれる
汎用型パスワードクラッカー
対応サービスが多様
     使用方法 hydra 試行アカウント 試行パスワード ターゲット サービス
ブルーとフォースオプション -x 最小文字数:最大文字数:使用文字数
入手したIDとパスワードの活用
共用の可能性
SSHでも試す
脆弱性を確定できない場合は多い
直接認証突破時の失敗はログに残っている
情報収集が大切

【metasploit】

脆弱性を攻撃できるツール
Metasploit Framework
ペネトレーションテストツールキット
エクスプロイト開発プラットフォーム
および研究ツール
Metasploit Pro
商用のペネトレーションテストツール
metasploit
脆弱性情報の収集に利用可能
ポータルサイトにてExploitモジュールを検索可能
既知の脆弱性 攻撃可否の判定
shellshock・・・GNU bashにおける任意のコマンドを実行される脆弱性
Rapid7 Exploit Database
脆弱性の情報にはCVE,CVSSも含まれる。
モジュールの使用方法も載っているので、
ホワイトハッカーとしての脆弱性情報の収集には最適
metasploitでの攻撃
Kali Linux からmsfconsole で行う。

【権限昇格】

Escalation
Privilege elevation
・アクセス権の取得フェーズにおいて
ユーザ権限までしか取得できなかった場合
に管理者権限の取得が目的
バックドアの作成やログ削除には権限昇格が必要
実はローカルからしか攻撃できない脆弱性は多数ある。
・アクセス権の取得後
情報収集
起動しているプロセスの確認、設定ファイル、コマンドによるバージョン取得
などコンソールから可能なことは豊富
ps -aux プロセスの確認
情報収集例
サービスに直接バージョンの確認、OSの知識が必要
管理者権限取得
脆弱性
/usr/local/bin/bof
バッファオーバーフローの脆弱性
ローカルサービス

視聴当時のメモ

section 7 DoS攻撃

【DoS攻撃】

Denial of Service攻撃
サービス不能攻撃、サービス拒否攻撃
コンピュータまたはネットワークに対する攻撃
ユーザによるシステムリソースへのアクセスを低下、制限、または阻害する
目的:ユーザへのサービス低下により、ターゲットに対する経済的損失や信用失墜を目的とする。
DoS攻撃の種類
帯域幅の消費:ネットワークやサービスの帯域幅を多量のリクエストにより消費させる。
システムリソース消費:リクエストを処理する能力やロジックの不備をついてシステムのリソースやCPUに過剰な負荷をかける
アプリケーションロジックエラー:アプリケーションのロジックエラーをついて無限ループや過剰な負荷をかける
DoS攻撃とIPスプーフィング
DoS攻撃においてIP偽装(スプーフィング)は重要
攻撃元の特定を阻害
攻撃の効果を増幅
DoS攻撃の応用
カモフラージュ
捜査誘導
痕跡の処理

【DoS攻撃のメカニズム】

帯域消費型DoS
基本的に工夫はなく通常のリクエストパケットなどを送る
一般的にはエンタープライズサーバやネットワークを消費させるほどのパケットはPCから送るのは難しい
アイデア:送信するパケットや送信方法を工夫しよう、1台じゃなく複数台で勝負
工夫されたDoS攻撃例
SYN-flood攻撃
TCPの3wayHandShakeを悪用
接続先ホストはSYNフラグを受け取ると、SYN/ACKを返し、接続テーブルを用意する。
この接続テーブルは接続元からACKが返るまで一定時間保持される
架空の予約でいっぱいにして、レストランを満席にするイメージ
工夫されたDoS攻撃例
増幅系攻撃
偽装したIPアドレス(IPスプーリング)により特定のネットワーク内での応答を増幅させる
ICMPやUDP、TCPなど応用可能
★外部ネットワークから攻撃対象となるサーバーを送信元になるように偽装した、
pingを内部ネットワークの各サーバー(内部ネットワークなのでハイスペック)
に大量に送る。すると、攻撃対象サーバーに大量にpingが返される。
ルーターなどを攻撃すると有効。
アプリケーションロジックエラー
アプリケーションの脆弱性を攻撃
アクセス権の取得はできなくてもDoSになる場合がある。
ロジックエラーの例
【解消済】Ping of Death ・・・ 65535byteを超えるサイズのpingを送るとインターネットがハングアップする。(pingはデータサイズを指定できる)
E-mail bombing ・・・ 大きなメール(添付含む)でメールサーバのリソース消費。アンチウィルスサーバーが落ちたり、メールサーバーが落ちたりする。
WinNuke・・・139/tpにOOB(Out of bounds)を送る
これらの攻撃は工夫したが故に特徴があり、侵入検知に簡単に引っかかってしまう。ファイアーウォールなどで簡単に検知されてしまう。
→工夫の仕方からハッカーの考え方を勉強できる。見つかりやすさを逆に使う(後述)。

【DDoS攻撃】

Distributed Denial Of Service Attack
送るパケットは工夫しないが、複数マシンから同じターゲットからタイミングを合わせて送信。
防ぎにくい。パケットは通常通りなので。
DRDoS攻撃
Distributed Reflection Denial of Service攻撃
分散型反射サービス拒否攻撃
DDoSの手法とIPスプーフィングの複合
中間標的にターゲットのIPでリクエストを行い、そのレスポンスをターゲットに集中させる。
中間標的からはターゲットが攻撃元に見える。

DDoS攻撃を構成する要素
ボット(ロボットの略)
DoS攻撃を行うように設定されたプログラム
外部からの指令もしくは定められたトリガで動作する
ハンドラ
複数のボットをコントロールするプログラム
攻撃者はハンドラを通してボットに指令
ボットの感染手法
マルウェアの一種
感染手法はマルウェアの感染テクニック
トロイの木馬、フィッシング、ファイル添付、直接挿入、脆弱性の利用
組織化とエコシステム
DDoS攻撃の懸念としては組織化
犯罪組織、テログループ、国家などが支援
相互のボットネットワークの援助などが問題に
エコシステム
攻撃によって得られた情報を市場で共有する
攻撃の情報とコネクション
DDoS攻撃は防御が難しい。水際で食い止めるためにも理解が必要

【DoS攻撃の活用】

サービス不能以外の活用
攻撃段階・・・発見されることを逆手にとる。
リアルタイム監視:愚かな監視者は該当のアラートを無視するように監視レベルを下げることも。。
また、本当に狙っている攻撃をカモフラージュするために、カモフラージュとして、DoSを攻撃することも。
これは効果的すぎて、ネットワーク自体を遮断するという対応をとるターゲットもある。
フォレンジック調査:無意味なログを入れることで、フォレンジック調査に手間をかけさせる。
後処理段階
権限昇格できない場合の痕跡の消去
 IPスプーフィングを使う。
追跡を混乱させ、手間を増やす。内部IPやグローバルIPを使う。

section8 web application 攻撃

【webapplication】

動的なサービスの必要性
・ユーザーからの入力をパラメータとする
→エンドポイントの技術を使用:JSやflashなどアプリケーション製作側とは別の技術
→様々な形式による情報送信:xml、soap、jsonなど。対応した対策の必要性
構造的問題
・HTTPの問題:デザインが古い、セッションの維持を考慮していない、暗号化を考慮していない

【webappへの攻撃の種類】

サーバーサイド攻撃
webアプリケーションを利用してwebサーバに攻撃を行う。
 ・サーバのフットプリントィング
 ・機密情報の閲覧
 ・アクセス権の取得
クライアントサイド攻撃
webアプリケーションを利用してクライアントに攻撃を行う
ユーザの機密情報閲覧
なりすまし
フィッシング
マルウェア配布
脆弱性
脆弱性のほとんどが製作者のミス
 ・攻撃に対する無知
 ・クロスドメイン制約
 ・単純ミス
 ・開発言語
 ・仕様
一部はWebサーバ構築によるもの

①入力値の検証不備

ユーザからの入力値
環境変数
データの再利用
 ・これらの値をプログラムで利用する際の検証
 ・ほぼすべての攻撃がこの脆弱性による
代表例
 ・ヘッダインジェクション
 ・OSコマンドインジェクション
 ・SQLインジェクション
 ・ディレクトリトラバーサル
 ・オープンリダイレクト
 ・クロスサイトスクリプト

②エラー情報の表示

エラー表示設定のミスにより攻撃に有効な情報が露出
不適切なエラーメッセージにより列挙が可能
 ・サーバのフットプリントティング
 ・SQLインジェクション
 ・有効なログインアカウントの列挙

③表示時のエンコード対策

ユーザからの入力値をHTMLに含める際に適切なエンコーディングを施さない。
 ・クロスサイトスクリプト

④SQL対策の不備

ユーザからの入力値でDBクエリーを作成する際に適切な対策を施さない。

⑤仕様の不備や無計画な実装

有効なログインアカウントの列挙
クロスサイトリクエストフォージェリ
クリックジャギング
セッションの問題・・・セッションIDの露出、セッションの固定、セッションIDの取り扱い

⑥その他

ロジックの不備によるDoS
MXインジェクション
通信の暗号化
SSLの問題(証明書・暗号スイート)
対応方法が変わる攻撃手法
クロスサイドスクリプトの例
 ・発言箇所で変わる対策
 ・データ通信方法(JSON、SOAP)
 ・アプリケーション側ロジック

【WEBアプリケーションの情報収集】

・URLを見るだけでいろいろわかる。

https://www.blksmith.jp/topic.aspx?date=20171010&sort=desc
ここから以下のことがわかる。
SSLの仕様、Aspxで開発。WebサーバはIIS、ページの性質上DB使用の可能性、
並べ替えの語句がDBに直接使用されている可能性

・Webサーバのフットプリンティング

 エラーページで存在しないページにアクセス。
隠されたコンテンツ
  ・robots.txt
・サンプルCGI
スキャナなどを使用。

・Webアプリケーション攻撃の情報

アプリケーション毎に行う
・エントリポイントの特定
・ファイルに関連するパラメータ
・パラメータがアプリケーションに与える影響
・レスポンス内の入力値
BurpSuite Proxy
・リバースプロクシ
・Webブラウザからのリクエストを送信前にインターセプト
・レスポンスをWebブラウザに表示する前にインターセプト
・パラメータの内容の確認、変更
Man in the web brouwser攻撃ともよばれる。
 使い方:ブラウザでプロキシを設定する。
BurpSuiteの設定で、Procy-Opttions-Proxy Listenersで、先ほどのプロキシのIPアドレスを入力
パラメータの値を取得し、それがどのように使用されるかを推測できる。
JSなのか、ファイルを扱っているのか、リダイレクトしているのか。
→こうやって、攻撃方法の選択をし、実行する。

【クロスサイトスクリプト】

ユーザーが入力した値をレスポンスに含めるとき、タグやスクリプトをそのまま表示する
脆弱性を利用したクライアントサイド攻撃
→HP改ざん、フィッシングサイトへの誘導、セッションIDの盗難
レスポンスの場所によって有効な攻撃文字は異なる
対象のWebアプリケーションのレスポンスを確認して攻撃文字列を考察する

対策:一般的な対応策はサニタイズ(無害化、出力文字のエンコード)
文字列はURLエンコードと、HTMLエンコードができる。
ex. < → %3C <
> → %3E >
' → %27 '
   " → %22 "
   & → %26 &

【セッションハイジャック】

Webアプリケーションは基本的にセッションIDでユーザを識別している。
他人のセッションIDを入手すれば簡単に他人になりすましができる。
入手方法:ブルートフォース、推測、セッション固定の脆弱性をつく、盗み出す
PHPSESSIDはランダムで長い文字列。よってブルートフォースや推測は不可能。
セッション固定:次の脆弱性がすべて揃った場合。URL引き数からセッションIDを付け替えられる。
        ログイン成功時にセッションIDを変更しない。フィッシングの成功。
盗み出す:Webサーバから、通信経路上から、クライアントPCから。

【SQLインジェクション】

もっとも初歩的な手法が認証突破
' OR 1=1 --'
--以降はコメントアウト
WAFで防がれる:TRUEを様々な方法で書けば突破できる。
ex. 2=2で通る場合もある。
    =で見ている場合もある。7>1 'ab' LIKE 'a%'
    5 BETWEEN 1 AND 7

WHERE句以外は使える?
ex. insert into
・時間遅延 sleep()など
・文字列連結(a'||'b →ab)
・インラインコメント(a/**/b → ab)

当時のメモ

・攻撃方法の名前は知っているものの、
攻撃手法以前の、
どういう考え方で、攻撃のための情報を取得するか、
という部分はあまり聞いたことがなかったので勉強になった。
・Webサイトのフットプリンティングからの情報収集は、
Couseraでエラー画面が出たら、Cloud Frontのエラーが表示されていて、
AWSに乗っているんだ。と思ったのを思い出した。

section9 アクセス権の維持

【アクセス権維持の必要性】

アクセス権を取得したときの方法でまたアクセスすればいいのでは?
→対策される。
管理者権限まで取得して、アクセス権維持の仕組みを作る。

【バックドア】

・設計開発段階で組み込まれるバックドア

・開発時にデバック用途で組み込まれる。
・公開や販売時にその機能を取り外し忘れる。

・開発者が勝手に作ったバックドア

・仕様外のデバック目的
・悪意をもつ開発者

・政府の諜報活動によるバックドア

・CALEA

・Communications Assistance for Law Enforcement Act
・法執行のための通信援助法
・米国内で使用されているほとんどの通信機器に、あらかじめ、政府機関からのアクセスを許容するバックドアが設けられている。

・攻撃者によって仕込まれたバックドア

バックドアを仕掛ける
→アクセス権を取得し、コンソール上から実行、マルウェアを設置(バックドアを開くためのプログラム)。

【バックドアの種類】

・ユーザーアカウントの追加

新しいユーザを作成し、管理者権限を与える。
Linuxの場合、 useradd ユーザ名 -N -M
password ユーザ名
管理者権限でのログインは制限されている場合が多いので、
一般権限を作成し、sudoersファイルを修正する。
短所
ファイルに残るので隠ぺいが難しい
ログに残る。

・既存サービスの起動

すでにOSに用意されているサービスを利用してバックドアを作成する。

・Netcat・・・TCP/UDP接続コマンドラインツール(Linux標準搭載)

    →バックドアポートを待ち受け状態にする。

・Xinetdなどのスーパーサーバ型デーモン
→サービスを常駐させず、特定のタイミングだけ起動させるもの。
ex.7777/tcpにアクセスがあったら、root権限で/bin/shを起動
・認証系サービス
→サービスはインストールされているが、設定で止められている場合。
ex.r系サービス esh,slogin,rcopy,ecmd
.rhosts内に"+ +"と記載する
認証無でr系サービスにアクセス可能になる。
・サービスの追加
もしサービスがインストールされていない場合、インストールしてしまう。
yumコマンド apt-getなど
最近のLinuxはネットワークに繋がっていれば簡単にインストールが可能。

・バックドアの隠ぺい

・管理者に見つからないように

①紛らわしい名前にする。(すでに起動しているサービスっぽいな舞にする)
②既存のサービスファイルの改ざん
③LMK型ルートキット
→アクセスの維持に使用されるツールのセット
バックドア、スニファ、ロガー、隠ぺいの手段

視聴当時のメモ

・認証系のサービスを起動させたら、バックドアになる、というのは、
オンプレサーバーで、「勝手にサービスを起動させてはいけない」
というのの根拠になるなと思った。(なぜだろう、と思っていた)
・r系サービスにアクセス可能にする方法など、linux系のサービスの設定が
垣間見れてよかった。

section10 痕跡の消去 ~露見しない~

s10 痕跡の消去

【後処理の必要性】

 侵入の痕跡の消去→アクセスログ、作成したツール類や一時ファイル、履歴やcookie、一時的に変更した設定の復元
 完全犯罪(調査すらされない)と露見した場合の追跡の阻害を目指す。
 注意点→管理者権限が必要、作業漏れないように、ログの設定を確認(外部ログサーバに出ている可能性もある)

【ログの消去】

・テキストで書かれたログ

・sysログ
・Apatchログ

・バイナリで書かれたログ

 ・lastlog
 ・Windowsのイベントログ

・Syslog

 ・ログメッセージをIPネットワーク上で転送するための標準規格。
 ・通信プロトコルを指すだけでなく、Syslogメッセージを送信するアプリケーションやライブラリに対しても使われる。
 ・Unix系サーバでは標準
 ・rsyslog( reliable-syslog)が普及
 ・設定:ログファイルの種類とパス 標準は、/etc/syslog.conf /etc/rsyslog.conf
@ホスト名になっている→外部のログサーバへの転送がされている。
テキストログの消去
→sedコマンドを利用して特定の語句が含まれている行を一括削除
 sed -i -e "/IPアドレス/d" ファイル名
 ・バイナリログの消去
ツールを使うorバイナリエディタを使う
ツールmetasploitのmeterpreterのログ消去コマンドを使用
 ・Windows監査ポリシーの無効化
Auditpolコマンド
Windows Server2012組み込みコマンド
auditpol /clear /y
痕跡そのものの消去=疑われすらしない。これが重要

【カモフラージュ】

権限昇格できないときはこの方法を使う。
ログの仕組みに着目!
・ローテーション
・定期的にログファイルをバックアップ
・バックアップしたログは履歴保管
ログローテーションの管理
Linux /etx/logrotate.conf
Windows イベントログのプロパティ(上書きできるかを確認できる)

section11 ネットワーク盗聴

【ネットワークの盗聴】

ネットワーク盗聴
Sniffing・・・受動的盗聴、能動的盗聴、ルーティング、無線盗聴
前提知識:インターネットで使われているイーサネットは同一ネットワークコリジョン内で
データを共有している。
受動的盗聴:

・通常はデバイスのNIC(ネットワークインターフェースカード)が

自分宛以外の通信を遮断する。

・自分宛以外の通信を受信する機能

能動的盗聴

・スイッチは何によって通信の宛先を判断しているか?→Macテーブル

・ARPにはその答えが正しいか判断できない。

 ARPスプーフィング
 MACスプーフィング

・ルーティング

 攻撃者の用意したホストを経由するようにターゲットを誘導し、
 ホスト上を流れるパケットを盗聴する
・Wi-Fi不正アクセスポイント
・不正プロキシサーバ
・ユーザのネットワーク設定書き換え

・ネットワーク盗聴

 無線盗聴:無線電波を傍受し、盗聴、暗号化されている場合、解読。
暗号とはWEP WPAと呼ばれるWi-fiの暗号
受動的盗聴、能動的盗聴は基本的に同じネットワーク上でしか行えない。
ルーティングや無線盗聴にその制限はない。
Wi-Fiの普及やWebの進歩により盗聴の手法や機会も見直されている。

【盗聴手法】

盗聴ツール・・・スニファー、パケットキャプチャー、プロトコルアナライザー
ex. tcpdump,windump,Wireshark
スニファー・・・ネットワーク上に流れるパケットから目的のパケットを絞り込む。
このフィルターがスニッフィングでは重要。
受動的盗聴・・・NICのプロミスキャスモードを有効にする。
ターゲットと同じハブに接続する。
スニファーを起動してパケットを見る。
能動的手法・・・ARPポイズニング
ARPをスプーフィングしてターゲットネットワークのARPテーブルを汚染する
それによって攻撃者のマシンを経由して通信を行うように誘導する。
ex.Cain&Abel(パスワードの解読や暗号解読機能ももってる)
この手法はMITM(Man in the middle攻撃)と呼ばれる。

【ルーティング】

ルーティングとは、:指定したルータを経由するよう設定し、安全な通信経路
→これを盗聴に悪用する。
→ルータ上を通過するパケットは見えるので、攻撃者の用意したルータを通過させる。

ネットワーク盗聴に使えるルーティング3選

・Wi-Fi不正AP(アクセスポイント)
Wi-Fi端末が接続
成功のコツ:SSIDを紛らわしく、安全そうな名前にする。パスワードをつけない。場所の選択。
・不正プロキシサーバ
プロキシサーバを準備し、無料プロキシサーバとして宣伝し、つないできたユーザの通信を盗聴する。
プロキシ 無料 と検索したら423000件ヒットしてしまう。。。
・ネットワーク設定の変更
ユーザのローカルマシンの設定を変更
デフォルトゲートウェイ、プロキシ、ネームサーバを直接操作orマルウェアで書き換える。
デフォルトゲートウェイの変更:同一ネットワーク上にルータを用意できる場合に有効
プロキシの変更:不正プロキシと同じ効果、ユーザ自身に設定させるか勝手にやるかの違い
ネームサーバの変更:こちらで準備したネームサーバに設定。虚偽のDNS情報で不正サイトに誘導。
広範囲の攻撃が可能だが、
特定性が高い攻撃をするには、ソーシャルエンジニアリングと組み合わせる必要がある。
調べること
Mac adress

section 12 マルウェア

【マルウェア】

ウイルス、ワーム、ランサムウェア、ボット、バックドア、ルートキット、スパイウェア、アドウェア
ウイルス・・・自己複製して他のプログラムに感染する。感染したプログラムがコピーされることで郭さんしていく。
ワーム・・・自己複製するが、他のプログラムは寄生しない、自分自身で感染経路を開拓し、郭さんしていく。
ランサムウェア・・・ファイルやフォルダを暗号化するなど使用を制限し、解除するために身代金を要求する
2017/05に世界中で、「Wanna Cry」が流行
スパイウェア・・・システム上のユーザの挙動を盗む
キーボードストロークロガー、通信盗聴、カメラ起動、通話機能、ファイル転送
アドウェア・・・広告を表示するソフトウェア、ユーザが不快に感じる場合はマルウェアと分類される場合もある
実際にマルウェアを作成することはプログラムの知識があれば難しくない
アンチウィルスなどに引っかかるマルウェアはスクリプトキディが不用意に流すため解析され登録される。

【感染の手法】

マルウェアの価値はその内容より感染手法
・送る(通常or通用でない方法)
・ダウンロードさせる
・直接インストールさせる
送る
メールなどの添付ファイル
如何にして開かせるか→アダルト系、儲け話、取引系
通常でない方法で送る
是弱性を使う 
Wanna Cry ・・・Eternal Blue Windows SMBv1のリモートでコードが実行される静寂性
CodeRed
ダウンロードさせる
人気のあるアプリケーションなどに仕込む
パッチなどに仕込む
人気のあるアプリケーションなどの追加モジュールなどを装う
セキュリティソフトを装う
ex.トロイの木馬
直接インストール
自分でやる、誰かにやらせる
直接ターゲットのPCにデバイスをつなぐ

section13 ソーシャルエンジニアリング

・つけこまれる心理
他人を信じやすい
攻撃に対して無知
恐怖
過度な要求
道徳的義務感
・攻撃が容易な組織の特徴
セキュリティ訓練が不十分
情報へのアクセス管理が不十分
組織単位の連絡がとれていない
セキュリティポリシーの欠如
・効果的な理由
セキュリティを構成する要素の中で人が最も弱くつけこみやすい
検出が困難
完全な回避が困難
防御機器が存在しない
・単に、直接情報を盗む手段ではない
ネットワーク攻撃の偵察フェーズの手段として
マルウェアを直接送り込む手段として
ネットワーク盗聴の準備手段として
・現代ではSNSでも可能

【各種手法】

・なりすまし
-エンドユーザになりすます
「営業部の○○です。出張先からアクセスしたいのですがパスワードを忘れてしまいました」
-テクニカルサポートになりすます
-上司や役員になりすます
「直接電話して申し訳ない。今、重要な会議中でね。資料を開くためのパスワードがわからなくて困ってるんだよ。」
-他人の権限を使う
先日システム部長の阿部様とお会いした際に、阿部様がお留守の際は、あなたに聞けばわかるとおっしゃっていたので。
-権力を使う。
警察署サイバー対策課の○○です。こちら令状です(偽物)。
通常の人は、令状を見たことがないのでだまされる。
・ソーシャルエンジニアリング
-ターゲットに話させる
-現地に赴く
それらしい服装をして直接ターゲット企業に赴く
現地は情報の宝庫。会話、おいてあるもの。
-ゲートを通る
ビギーバッキング・・・通行許可を持つ人間に同意を求めてゲートをくぐる(IDカード忘れちゃったので)
テイルゲーティング・・・くっついてゲートをくぐる
-ダンプスターダイビング・・・トラッシング、すきゃベンジンぐとも呼ばれる。
  ゴミ箱や郵便箱から情報を持ち出す
  シュレッダーから復元する業者もある。
-ショルダーサーフィン・・・肩越し、だけでなく、望遠鏡や双眼鏡を使う場合も。
-PCに加工 マルウェア、キーボードロガーなどのデバイス追加
-工作行為 テロ行為、監視システム設置
-スピアフィッシング・・・標的型メール攻撃、一種のソーシャルエンジニアリング、特定のサイトへの誘導、添付ファイルの展開
-SNSを使う・・・SNSでなりすまし、グループコミュニティ、実社会への関係の移行

ラスト section14 その他

【無線ネットワーク】

Wi-Fi IEEE 802.11標準に基づくWLAN
・SSID
サービスセットID →wi-fi一覧で出てくるアルファベット文字
アクセスポイントを識別するための名前
人が読み取ることが前提
テキスト文字列で32バイト
セキュリティは考慮されていない
・暗号
 WEP 使用厳禁
WPA 非推奨
WPA2 personal 非推奨 enterprise 推奨
WPA2・・暗号化アルゴリズム:AES-CCMP IVサイズ:48bit 暗号化キーの長さ:128but
完全性チェックメカニズム:CBC-MAC
・悪用の目的
不正使用・・・他人のAPを無断で使う
 APのスキャニングする
専用のツールor無線機能を持つデバイス
SSIDを知るだけならスマホでできる
 Wi-Fiチョーキング(チョーキング:泥棒が家の前に暗号化された侵入情報をチョークで残す)
不正使用可能なAPをマークして共有する(スキャニングしたAPを仲間内で共有)
・ウォーウォーキング:徒歩で探す
  ・ウォーフライイング、ドライビング、など。
・盗聴およびMITM・・・他人の通信を傍受し情報を盗み出し、情報を改ざんする
不正AP
 ・接続したユーザの通信を盗聴
 ・もしくはMITMを仕掛ける
無線盗聴
 ・無線経路上のデータを傍受し通信内容を盗聴、その後暗号解読
・不正AP
APモードのあるアプリケーション
WireSharkなどのスニファー
・Wi-Fiの普及
ネットワーク盗聴の危険性の増大
帯域制限による不正使用の必要性増加(ギガ泥棒)
新しい技術ゆえに、過去の遺物の攻撃の再利用がなされてる。
 

【スプーフィング】

なりすまし
・IPスプーフィング
接続元のIPアドレスを偽装すること。追跡防止、DoSの効果増幅が目的。
レスポンスは偽装したIPに送られるので、レスポンスを確認する必要のある攻撃には使えない。
・MACスプーフィング
MACアドレスによるフィルタリング回避
ARPポイズニング、CAM攻撃
DHCPに対する攻撃・・・DHCPはIPアドレスを自動で割り振るサーバ。これを枯渇させる攻撃がある。
・ARPスプーフィング
ARPの問い合わせを偽装すること
目的はRepyのMACアドレスを偽装することだが、Replyを引き出すために
Requestを偽装する場合もある。
能動的盗聴やMITMに用いれられる。
・DNSスプーフィング
DNSの問い合わせに偽装した答えを返すこと
目的はフィッシング
DNSの問い合わせはUDPなのでタイミングを合わせれば偽装は可能。
・スプーフィングツール
スプーフィング専用のものだけではなく、DoSやスニファーなどに
機能として組み込まれている場合も多い。
・MACアドレスのスプーフィングは注意が必要
実MACアドレスを書き換えないようにする(レジストリ操作しない)

【クラウド】

クラウドの種類
インフラストラクチャ:IaaS 仮想マシンやハードウェア
プラットフォーム:PaaS 開発環境など
サービス:SaaS サービスなど
・仮想マシンへの攻撃
資源の共有からなるサイドチャネル攻撃
CPU、メモリ、ネットワーク
ネットワーク共有による問題
ホストOSへの侵害
・サービス
重要なデータのネットワーク上へのバックアップ
アクセス方法が共通
甘い認証

【各種認定資格】

・CEH 現在はv9 日本語版あり Certified Ethical Hacker
米国国防省の防衛指令によって、情報システムにアクセスするすべての
スタッフが持たなければならない必須資格。
セキュリティ関連の資格としては米国では平均年収のトップ10にランキングされる資格。
海外のセキュリティエンジニアの必須資格。
・CND ver1 日本語版あり Certified Network Defender
多数の要望によって生まれた資格で現状のニーズに最もマッチしている。
ネットワーク管理者のセキュリティ資格の上乗せ。
CND:ネットワークセキュリティ
CEH:ホワイトハッッキング
・情報安全確保支援士
旧セキスペ
→残念ながらグローバル的にはまったく評価されない。
・CISSP Certified Information Systems Security Professional
CIO役員などだと評価が高いけど、
現場レベルではCEHのほうが評価が高い。
・CompTIA Security+
セキュリティ技術者の実務能力を評価
・自分の価値を現すものにもなるので選択は慎重に。
・講師の人は、CEH日本合格第一号の人だった。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?