草庐IT

CTF-Reverse

全部标签

【粉丝福利社】CTF实战:从入门到提升(文末送书-进行中)

🏆作者简介,愚公搬代码🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,51CTO博客专家等。🏆《近期荣誉》:2022年度博客之星TOP2,2023年度博客之星TOP2,2022年华为云十佳博主,2023年华为云十佳博主等。🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。🏆🎉欢迎👍点赞✍评论⭐收藏文章目录🚀前言🚀一、

c++ - 调整自定义迭代器以便(a?)reverse_iterator 可以翻转它的输出

最近,用户@MooingDuck设计了concatenated_range,一个优雅的自定义迭代器,解决了“链接”两个迭代器的问题,一切都在幕后。它非常适合预期用途:autorange0=concatenate_ranges(x,x+i-1,x+i,x+a5+1);a6=foo(range0.first,range0.second);现在,我想通过执行(示例#2)来调整它:autorange0=concatenate_ranges(x+a5+1,x+i-1,x+i+1,x+n);a6=foo(std::reverse_iterator(range0.second),std::rever

c++ - 在自定义迭代器上应用 reverse_iterator 后引用失效

我实现了一个双向迭代器,但它不是对数据结构进行操作,而是返回一个可以在两个方向上迭代计算的数学序列。事实上,我正在迭代整数,使用++和--在int上。这意味着数据不会存储在不同的结构中,因此当迭代器超出范围时,值也会超出范围。尽管如此,我希望下一个代码(最小失败示例)示例能够工作,因为迭代器始终保持在范围内。但它不起作用:(#include#include#includeclassmy_iterator:publicstd::iterator{intd_val=12;public:my_iteratoroperator--(int){std::cout();int&i=*it;if(t

CTF 三大测试靶场搭建:DVWA、SQLi-LABS、upload-labs 靶场部署教程(VM + CentOS 7 + Docker)

目录前言靶场介绍DVWASQLi-LABSupload-labs靶场搭建CentOS7虚拟环境准备靶场环境部署系统环境配置Docker环境配置下载Docker配置Docker镜像源启动docker 靶场配置靶场镜像抓取创建并运行docker容器靶场的访问 &靶场的初始化DVWA靶场重置SQLi-LABS靶场重置upload-labs靶场重置 总结补充:docker靶场高级使用进入docker靶场docker-宿主机之间文件复制前言本文主要是介绍在CentOS7环境下,利用docker部署CTF常见三大模拟靶场,分别是综合型靶场DVWA;SQL注入靶场 SQLi-LABS;文件上传靶场uploa

【C++】STL 算法 - 排序算法 ( 合并排序算法 - merge 函数 | 随机排序算法 - random_shuffle 函数 | 反转序列算法 - reverse 函数 )

文章目录一、合并排序算法-merge函数1、函数原型分析2、代码示例二、随机排序算法-random_shuffle函数1、函数原型分析2、代码示例三、反转序列算法-reverse函数1、函数原型分析2、代码示例一、合并排序算法-merge函数1、函数原型分析在C++语言的标准模板库(STL,STLStandardTemplateLibrary)中,提供了merge合并排序算法函数用于将两个已排序好的容器合并成一个新的已排序的容器;merge合并排序算法函数原型如下:templateclassInputIterator1,classInputIterator2,classOutputIterat

合天weekly_ctf 第五周

1.查看源代码我们发现对上传做了前端验证限制,只允许上传png,jpg,gif文件2.上传png文件后显示需要上传give_me_flag.php,但是他只是前端验证,直接改包绕过3.上传成功后显示文件里面要有givemeflag,于是我们直接在请求包的文件内容里加上4.flag拿到

CTF-sql- mysql order by盲注

本文章只讨论了orderby盲注,关于orderby的报错等注入不在本文章讨论范围,另有文章。让我们先来看看本文章所使用的表的内容,如下图:接下来先了解一下orderby的基础知识:orderby子句作用:对查询返回的结果按一列或多列排序。语法格式:ORDERBY{column_name[ASC|DASC]}[,...n]注意:orderby语句默认按照升序对记录进行排序效果如下图:思考1:以下两种sql语句的区别?将会怎么对查询结果进行排列?1、select*fromuserorderbyusername,passworddesc;(orderby2,3desc)2、select*fromu

CTF-sql-mysql group by报错注入

本文章主要涉及groupby报错注入的原理讲解,如有错误,望指出。(附有目录,如需查看请点右下角)一、下图为本次文章所使用到user表,该表所在的数据库为test二、首先介绍一下本文章所使用的到的语法:(第5、6条必须看,这涉及到之后的原理讲解)1、groupby语句:用于结合合计函数,根据一个或多个列对结果集进行分组。如下图:2、rand()函数:用于产生一个0-1之间的随机数:如下图:注意:当以某个整数值作为参数来调用的时候,rand()会将该值作为随机数发生器的种子。对于每一个给定的种子,rand()函数都会产生一列【可以复现】的数字3、floor()函数:向下取整:如下图:4、coun

CTF-sql-mysql宽字节注入

本文章主要涉及sql宽字节注入注入的原理讲解,如有错误,望指出。(附有目录,如需查看请点右下角)一、首先介绍一下本篇文章所用到的知识点:常用到的url编码:空格:%20单引号:%27在sql注入中,单(双)引号的应用十分重要,他决定着你能否从原有的一对引号之间逃逸出井号(#):%23在sql注入中,#号常被用来注释,即在使用单引号与原有一对单引号的第一个单引号进行闭合之后,用#将原有的一对单引号的第二个单引号注释掉,否则会出现语法错误。反斜杠():%5C在sql注入中,\号常用来进行反编译。addslashes函数(php4,php5,php7):格式:stringaddslashes(str

CTF-sql-mysql万能密码

以下是我在学习sql注入时的一些感想分享,希望能帮助到大家,如有错误,望指出。 万能密码的种类:①select*fromadminwhereusername=“”andpassword=“”②admin‘#③’+‘  ’+‘④0⑤Aaa’=‘ 在以下的select语句中的username和password可类似看作为字符串变量select*fromuserwhereusername=‘admin’andpassword=‘yi’;该语句的判断逻辑是什么呢?就是当username=‘admin’和password=’yi’都为真时执行成功。那么就是说不管怎么样,只要这两项都为真就行了,这就意味着