0%

理论

SQL 注入(SQL Injection)是一种常见的 Web 安全漏洞,其核心原理是:攻击者通过在用户输入的参数中插入恶意 SQL 代码,破坏原有 SQL 查询的结构,使数据库执行非预期的操作(如查询敏感数据、修改数据甚至删除数据库等)。

简单来说,就是后台程序没有对用户输入进行严格过滤,直接将用户输入拼接到 SQL 语句中执行,导致攻击者可以控制最终执行的 SQL 代码。

实操

阅读全文 »

写博客文章时,经常会遇到图片在本地显示不了的问题

网上看了很多教程,麻烦的一堆,要改typora的插入图像的偏好设置的,还要自己单独创文件夹的,然后自己

搞了一下,都多少有点问题,后来发现typora有个图像设置根目录,我的博客正好是hexo搭建的,所以可以设置相同的根目录

就能正常显示

阅读全文 »

easyGooGooVVVY

题目说是Java的groovy表达式注入
碰到groovy表达式注入,有几种方法可以解

读取文件

// 直接读取 flag 文件内容
new File(‘/flag’).text

阅读全文 »

到这里是SQL注入的题型

web171

打开题目,给了SQL查询的源码
)

1
$sql = "select username,password from user where username !='flag' and id = '".$_GET['id']."' limit 1;";
阅读全文 »

wsl安装的一整个过程

今天下午心血来潮,突然想安装一个wsl给自己用,之前一直安装有问题,今天花了点时间安装了一下,之前尝试过几次安装,有搞一晚上没搞成功的,可能太菜了,脑子不好用哈哈
记录一下踩过的很多坑吧,也希望能帮到有需要的人

wsl网上搜的是有官方的教程的
powershell以管理员身份运行

1
wsl --install
阅读全文 »

弱类型

弱类型分为两种
·一种是弱等于号 ==
·一种是强等于号 ===
弱等于号 == 在进行比较的时候会进行类型转换,再进行比较
强等于号 === 在进行比较的时候,会先将字符串类型转换为相同类型,再进行比较
如果是比较数字和字符串,或涉及到数字内容的字符串, 字符串会被转换成数值,并按照比较数值来进行比较

命令执行漏洞

·命令执行是一种攻击,通过易受攻击的应用程序在主机操作系统上执行恶意命令。当用户可以控制执行函数中的参数时,可将恶意命令注入到正常命令中,从而导致命令执行漏洞。
·命令注入是常见的漏洞形态。一旦存在命令注入漏洞,攻击者可以在目标系统里执行任意命令。命令注入常用在向系统传入不安全的参数(命令执行参数、http头、cookie)
·命令执行继承Web Server用户的权限,一般都有权限写木马、存木马,查看隐私信息、窃取源码,反弹shell,危害很大
Linux系统的文件通常有三种权限:

阅读全文 »

web361

题目说名字就是考点,想到经常打CTF题遇到的参数get传参name

先试一下常规的49,回显49,然后就是常规做法

1
?name={{"".class__}}
阅读全文 »

ez_php

代码审计

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
error_reporting(0);
highlight_file(__FILE__);
if (isset($_POST['a']) && isset($_POST['b']) && isset($_GET['password'])) {
$a = $_POST['a'];
$b = $_POST['b'];
$password = $_GET['password'];

if (is_numeric($password)) {
die("password can't be a number</br>");
} elseif ($password != 123456) {
die("Wrong password</br>");
}

if ($a != $b && md5($a) === md5($b)) {
echo "wonderful</br>";
include($_POST['file']); # level2.php
}
}
?>

第一关,传a,b,password,比较简单,password绕过is_numeric函数,只要加一个.就可以,然后md5可以用数组绕过,不是强等

然后拿到level2的源码

阅读全文 »