无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網 會員登陸 & 注冊

軟件測試 | 解碼ASP.NET的視圖狀態(tài)

2023-08-21 15:53 作者:測吧測試開發(fā)  | 我要投稿

更多學習資料戳!!!

問題

問題VP.NET提供了一種機制,通過這種機制,客戶端而不是服務器可以存儲狀態(tài)。即使相對較大的狀態(tài)對象(幾千字節(jié))也可以作為表單域發(fā)送,并由網頁瀏覽器在每次請求中發(fā)回。這被稱為視圖狀態(tài),存儲在表單名為__VIEWSTATE的輸入中。如果你的應用使用這個視圖狀態(tài),則需要研究業(yè)務邏輯對它的依賴方式,并圍繞著出錯的視圖狀態(tài)來開發(fā)測試。在你能夠對出錯的視圖狀態(tài)構建測試之前,必須了解視圖狀態(tài)在應用中的用法。

解決方案

從Fire Onion(pluralsight.com/tools.a)獲取ViewState Decoder。最簡單的使用方法是將應用的URL(或特定的頁面)復制并粘貼到URL框中。圖4-4顯示了ViewState Decoder2.1版以及它輸出的小型快照。

討論

有時程序不能從網頁中獲取視圖狀態(tài)。其實沒有問題,你只需要查看網頁的源代碼(參見3.2節(jié))并搜索<input type="hidden" name="__VIEWSTATE"...>。復制這個輸入的取值并粘貼到解碼器中。

假設圖4-4中的例子是你的應用,那么它就暗示了幾種可能的測試途徑。視圖狀態(tài)中有URL。它們可能包含JavaScript或將用戶定向到其他惡意網站嗎?不同的整數值又意味著什么?

如果你的應用使用ASP.NET和視圖狀態(tài),那么你應該問自己幾個與之相關的問題:

在服務器處理視圖狀態(tài)時,會將視圖狀態(tài)中的某些數據插入到后續(xù)頁面的URL或HTML中嗎?

現在來分析圖4-4中顯示的幾個URL。如果在這個應用中頁面導航鏈接是從視圖狀態(tài)生成的會怎么樣?黑客能夠通過向用戶發(fā)送假冒的視圖狀態(tài)來欺騙他們訪問惡意站點嗎?

視圖狀態(tài)時否受保護不會被篡改?

ASP.NET提供了幾種保護視圖狀態(tài)的方式。其中一種方式是簡單的散列值代碼,這樣如果視圖狀態(tài)有非預期的修改,服務器將能夠捕獲一個異常。另一種方式是一種加密機制,使得視圖狀態(tài)對客戶端和潛在的攻擊者不可見。

存在盲目地依賴于視圖狀態(tài)中的取值的程序邏輯嗎?

設想某個應用將用戶類型(普通用戶或管理員)存儲在ViewState中。攻擊者只需修改它就能夠更改自己的有效權限。

在需要為出錯的視圖狀態(tài)創(chuàng)建測試時,你很可能會用到像TamperData(參見3.6節(jié))或WebScarab(參見3.4節(jié))這樣的工具來注入新的取值。


軟件測試 | 解碼ASP.NET的視圖狀態(tài)的評論 (共 條)

分享到微博請遵守國家法律
那坡县| 平顶山市| 井研县| 崇仁县| 昌都县| 阿图什市| 读书| 平罗县| 东乡族自治县| 刚察县| 滦南县| 青海省| 潢川县| 长丰县| 灵石县| 平利县| 乡城县| 祥云县| 京山县| 保德县| 北川| 筠连县| 菏泽市| 邢台市| 休宁县| 贺州市| 安塞县| 新化县| 滦平县| 竹溪县| 迁西县| 阳泉市| 惠州市| 潞城市| 宝丰县| 天水市| 东至县| 屯昌县| 乌鲁木齐县| 郑州市| 泸水县|