在很久很久以,我有一個夢想 但是,後來我發現我的夢想漸漸沒有了
於是,昨天我思考了一整晚
覺得我應該有個夢想的!
好了,回到正題。正所謂明人不裝暗逼,今天我家開通了公網ip我開森啊,很開森的那種!
額,又離題了
下面我們真的開始了:
0x01
先來簡單看看鞋poc,exp的思路吧:
首先,我們需要知道這個漏洞,也就是發現漏洞
然後,我們需要知道這個漏洞原理,也就是了解原理
其次,我們需要搭建環境,或是網路上找環境了解這個漏洞使用的流程
最後,我們才是寫exp和poc
0x02
寫出一個簡單的poc我們需要python的哪些知識:
1.python基本的输出输入 2.python的数据类型 3.python的流程控制 4.python的正则表达式 5.python的网络编程 6.python的urllib和urllib2模块 7.python的sys模块和os模块
開始寫出poc(我們以論壇公佈的vbcms注入為例):
1.分析漏洞原理
可以看見他漏洞的利用位址,這是一個很明顯的sql注入語句,加了url編碼,我們嘗試解開url編碼
因為我們就是為了寫出poc,所以我們就直接載入這個程式碼就OK了
以下是poc的主體程式碼,光是作為參考,不懂python別看
以上就是該漏洞的poc了,這就是用於驗證漏洞,下面我們來試著寫出exp
0x04
開始寫出exp(我們以論壇公佈的vbcms注入為例):
上面我們分析了該漏洞的sql注入語句,可以看出來他中間的~! user() !~ 1 是完全可以更改的,那麼我們把它換成具有攻擊性的程式碼會怎麼樣哪?
例如我們需要檢查mysql版本我們是不是可以將user()換成@@version這個,哈哈對,就是這樣,當然這個是需要很高的手工注入技術的
以上就是exp的思路,注意:僅僅是思路而已和poc編寫有著很大的相同之處,就是把驗證程式碼改為注入程式碼
以上是分享使用python編寫poc,exp的實例教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!