系统安全实验(弱密码、robots协议、cpp下strstr路径检测绕过)

https://blog.csdn.net/wu_tongtong/article/details/123562621 前两个参考学姐文章
https://blog.csdn.net/l4kjih3gfe2dcba1/article/details/125026244后一个参考学长文章

1.弱密码

题目描述
弱口令没有严格和准确的定义,通常认为容易被别人猜测到或被破解工具破解的口令均为弱 口令。
弱密码漏洞,即由于MySQL 数据库root账户的密码设置简单,为弱密码,很容易爆破成功。
MySQL数据库的登录密码是典型的弱密码,并且有远程登录的权限,攻击者可以通过 sqlmap
等工具破解出弱密码,登录数据库并且获取数据库当中的随机flag。
tips:注意sqlru库

MySQL数据库的一些基本命令:

显示数据库
show databases;
选择数据库
use 数据库名;
显示数据库中的表
show tables;
显示数据表的结构
describe 表名;
显示表中记录
SELECT * FROM 表名;
建库
create databse 库名;
本地登录MySQL数据库
mysql -uroot -p输入root密码进去即可查看。
指定IP地址和端口号远程登录MySQL数据库
命令格式为:mysql -h ip -u root -p -P 3306
例如:mysql -h 1.1.100.3 -u root -p -P 3306 (1.1.100.3是靶机ip)
MySQL默认端口号为3306

远程登陆
远程登陆数据库
在这里插入图片描述
查看数据库中表 选择sqlru 显示表中结构
在这里插入图片描述
查看表中具体内容

2.robots协议

题目描述
robots是网站跟爬虫间的协议,用简单直接的txt格式文本方式告诉对应的爬虫被允许的权限,也就是说robots.txt是搜索引擎中访问网站的时候要查看的第一个文件。
当一个搜索蜘蛛访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,所有的搜索蜘蛛将能够访问网站上所有没有被口令保护的页面。
这道题很简单,主要考查对robots协议的理解。如果你真的理解了robots协议,那么你就可以轻松的找到flag。

在这里插入图片描述
先用浏览器去靶机ip地址看看
在这里插入图片描述
靶机ip的robots协议 所以去藏起来不让爬的地方
任何一个网页都可以视作一个 " 文件夹 ",robots文件里面给出的是允许用户端访问的 " 文件夹 "范围
在这里插入图片描述
3.cpp下strstr路径检测绕过

题目
靶机配置了ssh,可以账号test、密码123通过ssh登录到靶机进行攻击。(靶机IP地址见题目中网络拓扑图)。靶机用户文件夹中存在flag.txt,非root用户无权打开。同时用户文件夹中配置有一个具有root权限的可执行文件,它可以打开任意文件,但是在打开文件之前会根据文件名判断是否允许打开。(具体代码见用户文件夹下token.c)。
请分析并利用token获取flag。

https://blog.csdn.net/qq_63844103/article/details/127394389关于ssh远程登陆的介绍
假如目标ip为172.21.70.110,开启了22端口,并且是SSH服务,还知道目标机器上的用户名为Tom,密码为123456,就可以用SSH远程登录到目标机器,指令如下:ssh tom@172.21.70.110 -p 22
注:这里的-p 22也可以不要,因为-p 22是默认选项,如果是其他端口的ssh服务就需要用-p来指定其他的端口了。
在这里插入图片描述
登陆后查看各文件
在这里插入图片描述
登陆后查看token.c代码
cat
1.一次显示整个文件。
$ cat filename
2.从键盘创建一个文件。
$ cat > filename
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
$cat file1 file2 > file

相对地址:即相对当前页的地址;
/:根;./:当前级;…/:上一级

strstr函数是在字符串str1中查找是否含有字符串str2,如果存在,返回str2在str1中第一次出现的地址;否则返回NULL。
在这里插入图片描述
分析
strstr检查我们输入的路径是否含有flag字段,因此要避免出现之。

尝试使用./fl*使用shell的自动补全,发现补全行为是在程序执行前的,所以传入参数还是flag。
尝试在传入路径前加上\0,这样strstr的检测会停止在flag前。但是首先在shell中不能传入\0,其次传入\0后cpp的open函数也将无法打开对应路径 (没懂

使用链接
找到唯一一个可以自由创建文件的地方——/tmp,并在其中创建我们的链接文件。还不能是硬链接,得是软链接。原因可能是因为flag文件及其目录都是root权限,而硬链接实质上相当于拷贝一份文件的地址并给到一个新的指针上。软链接只是相当于Windows中的快捷方式,而token并不是不能打开flag文件,只是不要叫flag即可,因此我们给token传入flag的外号(软链接文件)即可获得flag
在这里插入图片描述
~代表你的/home/用户明目录 假设你的用户名是x,那么~/就是/home/x/
给文件创建软链接

命令:ln -s color.sh linkcolor
  为color.sh文件创建软链接linkcolor,如果color.sh丢失,linkcolor将失效。
  ln color.sh lncolor
  为color.sh创建硬链接lncolor,color.sh与lncolor的各项属性相同。

mount 挂载 不知道什么时候需要使用挂载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值