js和python交互_JSShell:一个基于python的交互式Shell
JSShell
本文將給大家介紹一款基于Web的多用戶交互式Shell,該工具采用Python語言編寫,服務器端使用的是Flask框架,而客戶端當然就是JavaScript和HTML組成的了。我當初在開發JSShell的時候只是想在測試和研究的過程中用它來遠程調試瀏覽器的網絡通信和信息處理等活動,但是我現在意識到了這款工具的作用遠遠不止于此,所以請各位不要將其用于惡意目的,作者Daniel Abeles對此一概不負責。
工具安裝
話不多說,先上GitHub傳送門【點我】。
我們建議使用虛擬環境來安裝JSShell,作者使用的是Python3.6,但JSShell也支持3.6之前的Python版本。
Pyenvpyenv virtualenv -p python3.6 venv
pyenv activate venv
virtualenvvirtualenv -p python3.6 venv
source venv/bin/activate
一鍵配置環境pip install -r requirements.txt
JSShell的特點-支持多客戶端;
-支持循環DOM對象;
-預生成腳本;
-命令隊列;
工具運行
創建數據庫:python db_handler.py create
開啟服務器(后臺):python run.py
通過瀏覽器訪問服務器地址:
如果你的服務器在本地,那么你可以直接用瀏覽器訪問http://localhost:5000(端口可能會不同)
打開交互式Shell:python shell.py
可選項:預生成腳本
每當新的客戶端進行注冊時,這些腳本都將會運行,不過你也可以根據你的需要來進行修改,一切都取決于你自己:)
工具使用
這個Shell接口給我們提供了多種可用的操作指令,你可以使用‘help’命令來查看所有命令,終端界面如下所示:
你可以使用命令隊列來申請執行多個命令,客戶端將會一個一個執行這些命令。所有的命令都會在相同的環境(context)中執行,所以你可以一次性執行多個相關命令。
如果你想查看發送給客戶端的命令,首先你需要選擇一個客戶端:>> select 1
然后使用‘coms’命令來查看所有發送給該客戶端的命令:(Client 1) >> coms
查看所有的命令以及相應的輸出結果:(Client 1) >> com 1
工作流程
當所有的安裝和配置都已完成之后,JSShell的工作流程如下:2.然后向服務器端發送一個‘register’請求;
3.等待用戶輸入命令;
4.與此同時,你可以使用shell.py腳本并在服務器端執行命令;
5.客戶端從服務器端獲取命令,當其得到了新的命令之后,會立刻將其加入隊列并依次執行;
6.命令執行完成之后,會將執行結果返回給服務器端;
7.現在,我們可以使用‘coms’命令來查看輸出結果了;
數據庫管理
我們在這里給大家提供了一個名為db.handler.py的腳本,這個腳本包含多種數據庫管理功能,你可以用它來管理和測試你的數據庫。
* 參考來源:JSShell, FB小編Alpha_h4ck編譯,轉載請注明來自FreeBuf.COM
總結
以上是生活随笔為你收集整理的js和python交互_JSShell:一个基于python的交互式Shell的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows右键在当前目录打开Cygw
- 下一篇: Cygwin复制,粘贴 直接用鼠标在黑