180824 pwn WSL下的環境搭建

2021-08-25 17:41:09 字數 1256 閱讀 9811

好幾個月前裝了wsl(windows subsystem for linux),但是圖省事裝了kali的,然後當時源是沒法更新的,於是一直放置

今天突然發現當時原來沒解除安裝(。

於是又掏出來試了一下,發現源可以正常更新了

這個流暢度、手感 比虛擬機器快多了

再加上跟主系統直接共享硬碟,隨意使用檔案,再也不用virtualtools傳來傳去

vmware,再見~

話是這麼說,系統裡其實啥都沒有,還是要慢慢配一下的

首先是源

於是只能另存為到自己的檔案目錄下,然後在wsl中將其mv到/etc/apt中進行替換

後面python、gdb、pwntools等等都直接apt-get/pip安裝即可,沒出什麼岔子

愉快的做了兩個題以後出問題了

在vmware的虛擬機器中,由於是圖形化介面,終端是可以起很多個的

於是pwntools.gdb呼叫的時候會通過gnome重新起乙個terminal

而wsl下由於沒裝圖形化介面,雖然事實上是可以起多個終端的,但是這多個終端的宿主是windows主系統

換句話說,wsl自己沒辦法起多個終端

那麼這可咋gdb哇,terminal都起不來還談何debug

文件上只說要在context.terminal上設定terminal,可是我這單終端沒有terminal啊~

搜了一會兒突然發現個好東西:tmux

簡單來說,它實現了在單介面的情況下實現多終端

大概長這樣

主要是它實現pwntools.gdb的相關坑和問題

首先要設定terminal

context.terminal = ["tmux", "splitw", "-h"]

其中-h表示橫向分隔,-v表示縱向分隔

注意啟動tmux、root的順序

必須是root許可權啟動的tmux,另一邊執行pwntools的也必須是root許可權

而執行pwntools的程序是否要在tmux內倒是無所謂,只要保證tmux存在可用的session就可以了

大概跟linux的許可權管理機制和ptrace的條件有關……

另外ida除錯應該也可以通過dbg和127.0.0.1直接除錯~ 基本上是比較完美的-w-

除了不能跑32位程式有點蛋疼……查了一下微軟大概是不打算支援了,民間有通過qemu來模擬執行的…簡直給力……

Linux,Ubuntu 環境下的LAMP環境搭建

搭建php開發環境 開啟http localhost,如果能看到歡迎頁 下圖所示 說明apache2安裝成功。sudo start mysql 手動的話這樣啟動 sudo stop mysql 手動停止 1 新增php7的ppa 使用add apt repository命令新增ppa add apt...

springboot下dubbo的連線環境構造

dubbo spring cloud spring cloud是乙個微服務的集合 提供了api閘道器,負載均衡等 首先再搭建這個環境前,需要先安裝一下zookeeper,還有可以看看一springboot下達博文件的 首先建立乙個springboot的專案,建議springboot的半杯是2.0.x...

Linux下c 程式設計與kdevelop的環境配置

1.開啟新立得軟體包管理器 2.查詢kdevelop,在結果中當然是勾選kdevelop,還有kdevelop系列裡面那個帶 dev 字尾的包,當然你可以不勾 3.裝好前面的包後安裝如下的包 automake autoconf g libtool cmake 這些裝了之後基本就可以執行了,但是你想看...