2013-02-27 182 views
1

我在Android上設置了一個MITM測試環境,我需要僞造假證書然後呈現給應用程序。爲了達到這個目的,我需要我的CA成爲Android可信任的CA之一,這意味着我必須手動安裝我的CA證書。是否可以使用SSL證書作爲中間CA證書?

我想避免這個特殊的步驟。

我正在考慮獲得由GoDaddy或GeoTrust發佈的合適的(=購買)證書,這些證書都是由Android信任的。但是,那麼我將不得不使用這個證書作爲僞造僞造證書的中間CA。

可能嗎?有沒有我沒有考慮到的邏輯/實踐限制?

回答

1

這取決於在證書中設置的擴展名以及軟件是否正確檢查它們。例如,「證書密鑰用法」擴展指定密鑰是否可用於簽署其他證書。證書基本約束擴展指定主體是否可以充當證書頒發機構,以及證書的級別低於何種級別。

正常的SSL證書不應具有充當CA證書的必要擴展名。這意味着你的方法很可能不起作用。

+0

所以,基本上有兩個解決方案我堅持。第一個是手動添加我的CA,第二個是購買可以充當中間CA的證書。你能想到其他方法嗎? 另外,你有第二個解決方案的指針嗎?提前致謝。 – Sebastiano 2013-02-27 15:34:23

+1

不,我沒有其他想法。如果獲得中間CA證書很容易,整個系統不會很值得信賴。所以手動添加可信證書似乎是唯一的選擇。 – Henry 2013-02-27 16:05:06

+0

是的,我明白了。 Android上令人討厭的事情是,證書首先用pin碼或解鎖模式加密,然後存儲。但我不想強迫用戶屈服於這個安全要求。 – Sebastiano 2013-02-27 17:10:39