InfoSecの概要
- infosecは、不正なアクセス、変更、違法な使用、中断などからデータを保護する
- 私たちの情報セキュリティのキャリアで何度も出てくる一般的なフレーズは、「データの機密性、完全性、および可用性」、または
CIA triad
を保護すること
特権のエスカレーション
PrivEscチェックリスト
HackTrics
- https://book.hacktricks.xyz/
- Linux
- Windows
PayloadsAllThings
- https://github.com/swisskyrepo/PayloadsAllTheThings
- Linux
- Windows
列挙スクリプト
- Linux
- Windows
カーネルエクスプロイト
- 古いオペレーティングシステムを実行しているサーバーに遭遇するたびに、存在する可能性のある潜在的なカーネルの脆弱性を探す
- 同じ概念が Windows にも当てはまります。Windows の未適用/古いバージョンには、特権の昇格に使用できるさまざまな脆弱性がある多くの脆弱性
脆弱なソフトウェア
- 私たちが探すべきもう一つのものは、インストールされたソフトウェア
- たとえば、Linux で
dpkg -l
コマンドを使用する - Windows の
C:\Program Files
を参照して、システムにインストールされているソフトウェアを確認できる - インストールされているソフトウェアの公開エクスプロイトを探す必要があります。特に、パッチが適用されていない脆弱性を含む古いバージョンが使用されている場合はなおさら
ユーザー権限
- Sudo -l
- SUID
- Windows Token Privileges
全てをSudoでできるから、こう言う時は、sudo su -
でいける
User user1 may run the following commands on ExampleServer:
(ALL : ALL) ALL
sudo -l で特定のアプリケーション、またはすべてのアプリケーションをパスワードなしで実行できる場合がある
snowyowl644@htb[/htb]$ sudo -l
(user : user) NOPASSWD: /bin/echo
- Sudoで実行できる特定のアプリケーションを見つけたら、悪用してルートユーザーとしてシェルを取得する方法
- GTFOBinsには、コマンドのリストと、sudoを介してそれらを悪用する方法が含まれている
- Sudo 権限を持つアプリケーションを検索でき、存在する場合、sudo 権限を使用してルート アクセスを取得するために実行すべき正確なコマンド
- LOLBASには、特権ユーザーのコンテキストでファイルのダウンロードやコマンドの実行など、特定の機能を実行するために活用できる可能性のあるWindowsアプリケーションのリスト
スケジュールされたタスク
- Linux と Windows の両方で、タスクを実行するためにスクリプトを特定の間隔で実行する方法
- いくつかの例は、1時間ごとに実行されるウイルス対策スキャンや、30分ごとに実行されるバックアップスクリプト
- 新しいスケジュールされたタスク/cronジョブを追加する
- 悪意のあるソフトウェアを実行するように彼らをだます
実行できるフォルダ
/etc/crontab
/etc/cron.d
/var/spool/cron/crontabs/root
cronジョブによって呼び出されたディレクトリに書き込むことができれば、実行時にリバースシェルを送信するリバースシェルコマンドでbashスクリプト
公開された資格情報
読み取りできるファイルを探して、公開されている資格情報が含まれているかどうかを確認できる
configuration
ファイル、log
ファイル、およびユーザー履歴ファイル(Linuxのbash_history
およびWindowsのPSReadLine
)で非常に一般的
SSHキー
- SSHキーについて話し合う
- 特定のユーザーの .ssh ディレクトリを介して読み取りアクセス権がある場合、/home/user/.ssh/id_rsa または /root/.ssh/id_rsa にあるプライベート ssh キーを読み、それを使用してサーバーにログインできる
- /Root/.ssh/ディレクトリを読み、id_rsaファイルを読み取ることができれば、それをマシンにコピーし、-iフラグを使用してログインできる