台灣最大程式設計社群網站
線上人數
914
 
會員總數:244123
討論主題:188483
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 使用弱點偵測掃描 發現了一些問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
使用弱點偵測掃描 發現了一些問題
價值 : 50 QP  點閱數:395 回應數:8

樓主

想睡覺
初級專家
1333 278
4956 1290
發送站內信

想請教各位大大
我使用了OWASP ZAP 弱點偵測掃描軟體
一直出現
他使用了 https://XXX/link.aspx?id=1&page=4-2 去攻擊
他的說明是SQL 注入是可能的。
原始页面结果被成功复制使用表达式 [4-2] 如参数值。被修改的参数值 已从HTML输出中删除为比较的目的
但我的PAGE 已經是下 int page = Convert.ToInt32(Request.QueryString["page"]); 將字串轉成數字了
這樣如果要攻擊是可行的嗎??
另外如果要修正的話 我要該怎麼修正這個錯誤?




搜尋相關Tags的文章: [ 弱點 ] ,
本篇文章發表於2018-11-09 13:57
== 簽名檔 ==
在學習的過程中沒有結束的一天.
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

想睡覺
檢舉此回應
已自行解決 我使用int.TryParse
本篇文章回覆於2018-11-09 14:36
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
SQL 注入是可能的。
原始页面结果被成功复制使用表达式 [4-2] 如参数值。被修改的参数值 已从HTML输出中删除为比较的目的
但我的PAGE 已經是下 int page = Convert.ToInt32(Request.QueryString["page"]); 將字串轉成數字了
這樣如果要攻擊是可行的嗎??


說明解除您無解答的設定
因為您自己提的方式,並無法解決 SQL Injection 的問題

標準的作法,就是透過『參數SQLParameter』的方式來處理資料的存取

解決方式網路有許多詳細的的說明
請搜尋關鍵詞『SQL Injection Parameter』

^_^
本篇文章回覆於2018-11-09 23:40
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

想睡覺
檢舉此回應
小喵大大您好
因為 我的page的值 並沒有讀取資料表 單純是網址頁面連結處理而已
所以並沒有透過SQLParameter 這個方式進行
才使用 int.TryParse 來做
判斷是否為純數字 如果不是純數字 就自動導向我指定的頁面
本篇文章回覆於2018-11-13 14:42
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

想睡覺
檢舉此回應
以下是我的程式碼


本篇文章回覆於2018-11-13 15:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
因為 我的page的值 並沒有讀取資料表 單純是網址頁面連結處理而已
所以並沒有透過SQLParameter 這個方式進行
才使用 int.TryParse 來做
判斷是否為純數字 如果不是純數字 就自動導向我指定的頁面


OK∼
沒有用到SQL語法

這樣應該就沒問題囉∼
不好意思打擾了∼

^_^
本篇文章回覆於2018-11-13 16:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

想睡覺
檢舉此回應
發現 用int.TryParse 去判斷是否為數字還是有問題
因為 1-1 有 - 的符號還是視同為數字


因為以前寫vb 有IsNumeric 可是c#沒有怎麼辦
於是在網路上找了找資料,找到了IsNumeric C#版的
但是 使用的正則表達示 是 有- 的,把他拿掉 只判斷是否為正整數
就 可以了




只是我不懂 即然 1-1 代表數字,為什麼弱點偵測掃描會出現 SQL 注入是可能的?
本篇文章回覆於2018-11-21 17:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
最有價值解答

topcat
捐贈 VP 給 topcat 檢舉此回應
只是我不懂 即然 1-1 代表數字,為什麼弱點偵測掃描會出現 SQL 注入是可能的?


就小喵個人的理解

『弱點掃描』是以工具去打可能的各式弱點
並列出『疑似』有問題的地方
提醒可能的問題∼
這種因為是工具去掃,所以多少會有一些誤判的情況

而另一種『滲透測試』則是以人工的方式,模擬駭客的攻擊去進行滲透
進而找出一些系統的問題
這種的誤判問題相對來說會少一些
但因為必須人工去做,費用相對會較高

樓主所提的,應該是工具做的弱點掃描
找出疑似可能發生問題的點
至於是否真的有問題,還是需要去驗證的
^_^
本篇文章回覆於2018-11-26 15:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
作者回應

想睡覺
檢舉此回應
原來是這樣, 謝謝小喵大大的分析,感謝^^
本篇文章回覆於2018-11-27 10:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.