我的GitHub
0%

无星的渗透之旅速成篇(五)-应急

1.有提示看提示,没提示看网络连接

看网络进程

1
netstat -antup

2.看用户

1
cat /etc/passwd

3.看定时任务

1
2
crontab -l
crontab -u 用户

4.查看某个时间段文件改动内容

1
2
3
find / -type f -newermt "2021-08-20 00:00" -a -not -newermt "2021-08-20 23:59" 2>/dev/null

find / -type f -newermt "2021-11-15 18:00" -a -not -newermt "2021-11-15 23:59" 2>/dev/null | grep /bin | xargs -I {} file {} | grep -v ELF | grep "Bourne-Again shell script, ASCII text executable"

5.查看报错邮件

1
ls -lth /var/spool/mail/

6.命令篡改

可以使用busybox

一些sh

1
2
3
4
5
6
7
8
9
10
11
# 查看系统日志,/var/log/message    secure    auth.log
#搜索所有ssh登录成功的主机
cat /var/log/auth.log |grep "Accepted"
#搜索所有ssh登录失败的主机
cat /var/log/auth.log |grep "Failed"

#统计ssh登录成功的ip的登录次数
cat /var/log/auth.log |grep "Accepted"|grep -o -E "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}"|sort -n |uniq -c|sort -nr
#统计ip次数
cat /var/log/apache2/access.log|cut -d " " -f 1|sort|uniq -c |sort -nr

赣银杯决赛赛前培训

环境

一些工具包

链接:https://pan.baidu.com/s/1o9EI_azqWyl8PvdL5W2c7Q?pwd=qhtm

提取码:qhtm

包括:取证、渗透、漏洞利用工具包、GTFO【提权】、Dictionary【字典】

kali

https://www.kali.org/get-kali/#kali-virtual-machines

win11

https://github.com/arch3rPro/Pentest-Windows

虚拟机下载

迅雷网盘(试运行阶段,采用迅雷网盘下载,一段时间没啥问题再换掉下面的123pan)

● 链接:https://pan.xunlei.com/s/VNx2MzYGQu_V_sykWgMBbTrzA1 提取码:tgak

123盘链接郑重申明:123pan现在下载有流量限制(已经开始收割了),需要登录才能下载了,等我找到合适的网盘就换了

再次申明:不要扫码付费下载,不要扫码付费下载,不要扫码付费下载!!!

●Windows11 Penetration Suite Toolkit v2.2 (WSL) 【推荐】

○下载链接:https://www.123pan.com/s/q59KVv-T4Qpd.html 提取码:wpst

○文件大小:8.55GB,解压后:23.2GB

○SHA256:
7305DBFFF38EAAD59373C8232EB417F6E996A5E80F379D22688BAC0E7C8CA6A9

●Windows11 Penetration Suite Toolkit v2.2 (NoWSL) 【无WSL】

○下载链接:https://www.123pan.com/s/q59KVv-tvQpd.html 提取码:wpst

○文件大小:7.13 GB,解压后:17.6GB

○SHA256:
D05F8366E1054911AAE885A61D2621786B74CC6050F55A66B90CE4EDD38CFD98

比赛形式

运维赛

被攻击的机器

登录机器,分析攻击者行为,怎么进来、做了什么更改

对环境进行修复【攻击者留下的后门、源码本身就存在的漏洞】

机器一轮一轮地进行检测

成功加固,得到相应分输【不需要额外提交东西】

渗透赛

一台正常的机器【含有漏洞】

扮演攻击者,从主机发现->漏洞利用->获取权限->权限提升->获取到flag文件

flag{xxxxxxx}

应急响应

linux进程排查

  • linux网络排查
  • linux文件排查
    • 1.webshell
    • 2.写了私钥文件
    • 3.httpd.conf conf.d
    • 4.ls -> alias ls=”ls>/dev/null”
    • 5.ps->ps_bak

思路:

* 1.tar -czvf www.tar.gz  /var/www/html/*    打包网站直接扔D盾
* 2.ls -altS /usr/sbin |
* 3.head -30
* 4.find   -newermt 2024-01-03   not newermt  找某个时间范围内的
* 5.find / -mtime 7 –exec ls –l {} \;			找7内修改的
* 6.find / -perm –u=s –type f 2>/dev/null	找suid
* 7.find / -name “.*” –mtime7 –exec –l {} \;    查找隐藏文件
* 8.ls直接反弹shell,目标机器ls拷出来,和自己linux机器中的ls进行比对
* 9.md5sum ls
* 10.diff 1 2 

linux用户排查

* 1.可能存在后门用户
* 2.grep :0 /etc/passwd
* 3.cd /home/test    
* a.cat /home/test/.bash_history
* b.查看一下家目录有没有奇怪文件
* 4.userdel 删除用户
* 5.直接到/etc/passwd删除该用户行
* 6.cat /etc/passwd | awk -F: '{print $7}' | sort | uniq -c      
* 7.查看有sudo权限的用户【权限排查】
* a.more /etc/sudoers | egrep -v "^#|^$"
* b.grep wheel /etc/group   排查指定组的用户或者指定用户
* 8.cat ~/ .bash_history   历史命令

linux持久化排查

* 1.crontab -l  列出定时任务
* 2./var/spool/cron/crontabs
* 3.检测到可疑的定时任务:
    * a.crontab -r删除
    * b.进到文件,直接删除指定行就可以
* 4./etc/rc.d/*   【排查启动项】先runlevel查看一下启动级别
    * a.➢ /etc/rc.local
    * b.➢ /etc/rc[0-6].d
    * c.➢ /etc/inittab

linux日志分析

  • 1.web服务日志
    • a.apache nginx cd /var/log/nginx/access.log
  • 2.登录日志
    • a./var/log/auth.log
    • b./var/log/secure
    • c./var/log/wtmp
    • d.排查一下日志里面有没有脚本
  • 3.应用日志
    • a./var/log/messages:内核及公共消息日志
    • b.➢ /var/log/cron:计划任务日志
    • c.➢ /var/log/dmesg:系统引导日志
    • d.➢ /var/log/maillog:邮件系统日志
    • e.➢ /var/log/lastlog:用户登录日志
    • f.➢ /var/log/boot.log:记录系统在引导过程中发生的时间
    • g.➢ /var/log/secure:用户验证相关的安全性事件
    • h.➢ /var/log/wtmp:当前登录用户详细信息
    • i.➢ /var/log/btmp:记录失败的的记录
    • j.➢ /var/run/utmp:用户登录、注销及系统开、关等事件;

工具

  • exploit-suggester
  • linuxenum

直接搜索”linux提权工具、linux系统信息收集”

LinPeas: https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/linPEAS

● LinEnum: https://github.com/rebootuser/LinEnum

● LES (Linux Exploit Suggester): https://github.com/mzet-/linux-exploit-suggester

● Linux Smart Enumeration: https://github.com/diego-treitos/linux-smart-enumeration

● Linux Priv Checker: https://github.com/linted/linuxprivchecker

渗透测试

信息收集

分类

  • 1.主动
    • a.精准度比较好,直接与目标交互,容易被发现
  • 2.被动
    • a.隐蔽性比较好,第三方交互、精准度较差

端口扫描【+主机探测】

1
2
3
4
5
6
nmap -sP x.x.x.0/24   探测主机存活
nmap -sS -p- x.x.x.x -Pn 使用syn半开放扫主机【默认存活】【扫全端口】
nmap -sV -A x.x.x.x 21,22,3306,1443 精细探测服务【名称、版本、可能的漏洞】

arp-scan -l 捕获局域网流量,探测存活主机
arp-scan -l -i eth0 j 监听某张网卡

敏感文件探测

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
1.dirsearch
a.dirsearch -u http://xxx -e * -t 20 -i 200 -x 500 400
b.--delay 0.7
c.dirsearch -u http://xxxx -e * -t 200
2.dirb
a.dirb http://xxxxxx
3.dirbuster(kali有)
a.字典比较好用,可以结合其他工具指定字典使用
b./usr/share/wordlists/dirbuster
4.gobuster
5.burpsuite
6.御剑
7.敏感文件
a.www.zip
b.index.php.bak
c.robots.txt

漏洞利用

工具

1.通用漏洞扫描:

1
2
3
4
5
fscan:   fscan64 -h x.x.x.x
nessus:
awvs:
netsparker:
nmap --script "漏洞检测脚本"

2.漏洞利用工具:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
a.sqlmap
【get注入】sqlmap -u http://xxxxx?id=sss
sqlmap -u http://xxxxx?id=sss --dbms mysql --dbs
sqlmap -u http://xxxxx?id=sss --dbms mysql -D 数据库名 --tables
sqlmap -u http://xxxxx?id=sss --dbms mysql -D 数据库名 -T 数据表名 --columns
sqlmap -u http://xxxxx?id=sss --dbms mysql -D 数据库名 -T 数据表名 -C id --dump

sqlmap -u http://xxxx --file-read "/etc/passwd"
sqlmap -u http://xxxx --os-shell 获取系统权限

【post注入】输参数之后,burp抓包
右键 save to item/copy to file 保存到本地 1.txt
sqlmap -r 1.txt --dbs 步骤同上【加载请求包,对其中所有字段进行注入尝试】

b.wpscan
i.wpscan --url http://xxxxx

3.弱口令

1
2
3
a.root/root
b.admin/admin
c.admin/password123

获取权限的下一步操作

1.theme

a.往主页、或者html、php模板中插入php代码
b.访问主页时即可连接shell

2.文件上传

3.命令执行漏洞
【www-data】

1.sudo -l 
2.find 找一下有没有suid提权
3.直接上传linux信息收集工具

有没有私钥登录,有没有其他用户,有没有其他敏感文件/tmp
检查crontabs有没有定时任务,内核提权

我是阿星,阿星的阿,阿星的星!