整這個**真有夠麻煩的。
先說原理吧,https**伺服器都是有證書的! 之所以google和12306表現不一,是因為12306的證書是什麼 「srca」,鐵道部自己的ca伺服器簽發的,並不被瀏覽器或作業系統(至少我的firefox就不認它)廣泛接受!
google的證書也是google的ca伺服器簽發的,不過被認可,沒辦法。。。
建行ccb的證書是verisign簽發的,這個基本所有的地方都認。
好了,解決方法:1.把這個srca簽發的證書匯入系統。這個windows下匯入ie即可,具體不說了;2.我們在程式中 不讓它去驗證 伺服器證書(這種方法僅用於測試!)
**如下,給出乙個空的trustmanager來繞過ssl 伺服器證書驗證:
@testpublic
void
test14
()throws
exception
@override
public
void
checkservertrusted
(x509certificate
paramarrayofx509certificate
,string
paramstring
)throws
certificateexception
{}@override
public
x509certificate
getacceptedissuers
()}};sc.
init
(null
,tmarr
,new
securerandom
());
conn
.setsslsocketfactory(sc
.getsocketfactory
());
conn
.connect
();try
(bufferedreader
br =
newbufferedreader
(new
inputstreamreader
(conn
.getinputstream
())))}
檔案上傳伺服器端檔案內容檢測繞過
1 檔案頭檢測,getimagesize 函式 3 二次渲染 1 更換其他標籤 2 對檔案內容 資料報進行處理,將content disposition form data name file filename 中的form data修改為 form data 3 替換大小寫,將資料報中的欄位名的字...
socket伺服器端
伺服器 include winsock2.h include string.h include stdio.h include time.h include stdarg.h include stdlib.h pragma comment lib,ws2 32 void errexit const ...
kerberos伺服器端
1.安裝tcl wget tar zvxf tcl8.5.12 src.tar.gz cd tcl8.5.12 cd unix configure make make install 3.解壓 tar xvf krb5 1.10.3 signed.tar tar zvxf krb5 1.10.3.t...