http抓包代理程序,http協議調試工具

jopen 10年前發布 | 29K 次閱讀 pproxy 網絡工具包

http抓包代理程序,http協議調試工具。
采用golang編寫,采用bs模式(s-代理程序,b-會話查看、配置管理等功能)

下載編譯好的可執行文件: http://pan.baidu.com/s/1i3pAe7V

支持:
1.url重定向
   如把 http://www.baidu.com/s?wd=pproxy 修改為 http://m.baidu.com/s?wd=pproxy

2.form表單動態  
   get、post可以動態修改(增刪改)  

3.hosts文件支持
  相當于 修改host或者dns 如  
  將www.baidu.com 請求全部發往127.0.0.1  
  將www.baidu.com:81 請求全部發往192.168.1.2:8080  

4.可查看request 和response詳情
   form表單參數,header等都可以很方便的看到

5.登錄認證支持
   支持httpBasic認證

6.redo功能
   可以修改request的參數(get、post、header)

使用javascript來配置重定向功能,如

if(req.host=="www.baidu.com"){
   req.host="www.163.com"
   req.host_addr="127.0.0.0:81" // send req to 127.0.0.1:81
}

當然也可以這樣:

if(req.host.indexOf("baidu.com")>-1){
  req.host_addr="127.0.0.0:81"
}

req變量示例:

#url : http://www.example.com/album/list?cid=126
#req對象有如下一下屬性:
schema : http
host : www.example.com
port : 80
path : /album/list
get: {cid:[123]}
post: {}
username : 
password : 
method: GET
form_get  : {add:function(k,v){},set:function(k,v){},get:function(k){},len:function(){}} 
form_post : {add:function(k,v){},set:function(k,v){},get:function(k){},len:function(){}}

host_addr: #修改該請求的host是使用,如 127.0.0.1:3218

#注意 get 和post的值是數組,如上cid參數
#form_get 用于更方便的操作  get參數對象
#form_post 用于更方便的操作 post參數對象

除了url變量外,其他的都是可以修改來對request進行重寫的

增強的hosts文件使用:

www.baidu.com 127.0.0.1
www.baidu.com:81 10.0.2.2:8080

配置文件:

conf/
├── pproxy.conf          #server的配置
├── hosts_8080           #8080端口server的hosts規則
├── req_rewrite_8080.js  #8080端口server的url重寫規則
├── hosts_8081
├── req_rewrite_8081.js
└── users                #全局帳號配置文件

users配置:

#name psw isAdmin
admin e10adc3949ba59abbe56e057f20f883e:md5 admin   #帳號 admin,密碼 是 md5(123456),是管理員帳號

可以在線修改配置時必須使用管理員帳號登錄

配置文件示例:

port : 8080

title : demo
notice :notice notice

#數據存放目錄,相對于當前配置的路徑
dataDir : ../data/

#代理服務認證方式
authType : none
#options:{none : 無認證     basic : http basic  try_basic : 嘗試httpBasic認證 }

#那些request和response數據進行存儲
responseSave : all
#options:{ all : 所有   only_broadcast : 發送到session list的才存儲}

#session列表查看數據
sessionView : all
# options :{ all:所有人可見 ip_or_user : 輸入正確的ip或者user后可見}

項目主頁:http://www.baiduhome.net/lib/view/home/1406428171710

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!