分享使用python编写poc,exp的实例教程
程序员文章站
2022-03-31 16:00:42
...
在很久很久以,我有一个梦想 但是,后来我发现我的梦想渐渐没有了
于是,昨天我思考了一晚上
觉得我应该有个梦想的!
好了,回到正题。正所谓明人不装暗逼,今天我家开通了公网ip我开森啊,很开森的那种!
额,又跑题了
下面我们真的开始了:
0x01
先来简单看看鞋poc,exp的思路吧:
首先,我们需要知道这个漏洞,也就是发现漏洞
然后,我们需要知道这个漏洞原理,也就是了解原理
其次,我们需要搭建环境,或者是网上找环境了解这个漏洞使用的流程
最后,我们才是编写exp和poc
于是,昨天我思考了一晚上
觉得我应该有个梦想的!
好了,回到正题。正所谓明人不装暗逼,今天我家开通了公网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编写有着很大的相同之处,就是把验证代码改为注入代码
【相关推荐】
2. 分享Python中用于计算指数的exp()方法实例教程
以上就是分享使用python编写poc,exp的实例教程的详细内容,更多请关注其它相关文章!
上一篇: 一个简单的php截取字符窜有关问题
下一篇: apache - 无法访问本地PHP项目