自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 Isaac-gym安装记录(无界面服务器版)faied to create Window in

无界面服务器版 isaac-gym安装

2024-09-25 11:18:19 2576 1

原创 OpenCL,This application failed to start because no Qt platform plugin could be initialized,中文路径名问题

大意是目录名中有韩文,我联想到我的install.exe所在的路径中也包含中文,所以尝试将文件夹复制到英文路径下,并删除了之前复制过来的platform文件夹。大概需要20G,在安装期间我去外网查了关键字 intel opencl xxxxxx no qt platform。查资料后,了解大概是要么是没有QT,要么是环境变量力没配置这个platform导致找不到。此时我以为是platform不够全,所以重新安装QT,把安装时能选的都选上。再次安装,依然报错,但不一样了,可以获取到一些platforms。

2023-07-19 17:08:34 256

原创 org.apache.ibatis.binding.BindingException: Invalid bound statement 所有方法都试了,死马当活马医来看看

application.xml配置时, mybatis拼成mybaits 这个错误困扰了我一天

2022-03-07 18:02:19 218

原创 五分钟理解KMP算法关键部分

A为主串,B为子串的一部分。此时在子串的21位置处发生失配。(21以及以后的子串都没画)。B,C,D都是一个串,只是位置不同 用s表示子串 假设最长的相等的前后缀的长度为4。即s[1:4]与s[17:20] s[1:4]==s:[17:20]有什么结论? 结论1:将子串从1出开头的位置,滑动到以17为开头的位置上,可以实现部分匹配,之后,子串不必从头(1号位置)开始跟主串匹配,而是从5号开始跟主串匹配即可。这也是kmp算法的操作,如图中D所示。 结论2: 将子串滑动到17位置前的任何位置,都不可能实现字符.

2021-07-23 16:33:27 269

原创 BUGKU_Simple_SSTI_1

查看网页源代码,发现提示: 与flask框架的 secret_key有关。 这个是模板注入的题,所以可以猜测思路是利用模板注入漏洞将secret_key变量的值回显到页面上。 如果没有才有猜到,那就利用payload先执行个ls命令看看根目录下有什么。 具体利用什么样的payload和为什么利用它见我的另一篇模板注入相关的笔记。 发现有这些文件 然后查看app文件夹里有什么 发现有app.py 有可能是源代码。 所以利用漏洞执行cat命令查看内容 根据红线,我们也可以知道,要想获取flag,就得获取 .

2021-06-05 04:13:00 880

原创 浏览器查看源代码和F12审查元素的区别

查看源代码就是查看服务器发给浏览器的原封不动的代码。 审查元素是,浏览器执行完源代码里的js代码后的最终结果。 “审查元素”包括源代码+js动态渲染的内容,即最终展示的html内容。 在做WEB CTF题的时候,遇到过一道题,就是 访问1p.html, 直接访问就会跳转到另一个页面。如果是查看源代码,就不会跳转。应该是源代码里有跳转页面的JS代码被执行了。 参考自https://blog.csdn.net/u010865136/article/details/109857046 ...

2021-05-25 09:53:11 2419

原创 启动mysql,系统出错,发生系统错误 1067,进程意外终止。

兄弟们配置的时候要动脑筋,不能只是机械人一样百度,一个答案一个答案的试,太low了。 最起码学会两点 看错误日志, 包括应用程序本身的,以及windows事件日志等。 看错误日志 根据时间,查看错误日志,这个是mysql本身的错误日志,没看出什么明显的信息。 接下来去看看 然后用everything一查errmsg.sys,发现目录不对。 哦恍然大悟,我安完mysql之后手动把整个mysql文件夹位置换了一下,而且也改了系统变量path了。 那么问题很可能是出在mysql本身配置上,导致目录寻址错误

2021-04-12 23:35:20 591

原创 php+nginx在windows下环境搭建好以后index.php只能下载不能被解析的问题

晚上这个问题卡了我一个多小时,到1点了不得不去睡觉。第二天起来,继续查,看到一哥们说他也是,然后重启之后问题就解决了,我抱着试试的态度,重新访问了下index.php,竟然真的可以了。心底一万个草泥马在奔腾啊简直。。 https://www.cnblogs.com/wwjchina/p/9804576.html 感谢这个哥们。 在这里记录下来,希望兄弟们别再踩这个坑了。还有不要钻牛角尖,解决一个问题卡住了,不要一直卡下去,干点别的事,换换脑子,过段时间再来解决。 ...

2021-04-12 09:33:44 509 2

原创 模板注入漏洞

SSTI(Server-Side TemplateInjection)服务端模板注入攻击,通过与服务端模板的输入输出交互,在过滤不严格的情况下,构造恶意输入数据,从而达到读取文件或者getshell的目的。此种类型漏洞虽然多次在CTF中,以Python语言为载体出现,但是这并不是Python模板引擎独有的漏洞。 值得注意的是: 凡是使用模板的地方都可能会出现SSTI的问题,SSTI不属于任何一种语言。 jinja2原理 以下内容,以Python的模板引擎Jinja2为例。 from flask import

2021-04-07 09:53:49 1550 3

原创 mysql条件等号的异常情况

转自http://www.wupco.cn/?p=93

2021-03-25 16:58:18 205

原创 WEB36,38:全都过滤了,你绝望吗(sql盲注)

先验知识 sql运算符优先级中比较运算符低于加减运算符的, mysql,中 where 语句中的运算符,例如加减,= 都是弱类型运算,跟php一样会进行强制类型转换。 字符串进行加减运算时,有以下几种情况: ‘abc’+0 = 0 ‘a’ + 0 = 0 ‘123’ + 0 = 123 ‘-123a’+0 = -123 ‘-+123a’ + 0 = 0 ‘a123a’ + 0 =0 ’ ’ =0  空字符串也是转0 ‘abc’ + ‘aaa’ = 0 ‘abc’ + ‘123’ =

2021-03-25 16:32:38 431

原创 WEB35(序列化和反序列化)

之前学java时就了解过java序列化,即把java对象转变为字节流。序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。 总之,序列化作用就是方便传输和存储,将不同环境下的数据转换为一种公共的大家都认识的数据格式。 先不深究序列化了,应该会涉及到操作系统,编译原理等知识。 先浅浅的,形象化的认识一下php中的序列化和反序列化吧。 先说结论:php序列化使得php中的所有数据类型都可以转换为一种特定的字符串,不必直接传输该数据,而是传递序列

2021-03-22 11:28:09 271

原创 web25:SQL漏洞之约束

本题已经给了提示,基于约束的SQL漏洞攻击。 关于SQL漏洞攻击,这个哥们https://www.cnblogs.com/ECJTUACM-873284962/p/8977983.html写的很好。 首先要理解 数据库中 约束的概念。 其次,了解sql执行字符串处理时,多数情况下字符串末尾的空格符将会被删除 假设: 1.. 数据库中有一条某个字段为字符串A的记录 2. 我们在php后端与数据库交互的代码中,查询是否存在字符串A。如果存在,则结束。否则,继续执行。 3. 假设字符串A所在字段没有唯一性约束,但

2021-03-10 19:27:14 133

原创 web21:作者:御结冰城

打开后查看源码,发现提示 1p.html 所以 看看是否存在1p.html这个文件 url输入ip:port/1p.html发现跳转到了www.bugku.com这个网页 这个变化说明:1p.html这个文件确实是存在的,而且这个文件执行了一个链接跳转到www.bugku.com的动作。 所以,先看看1p.html这个网页的源代码 一个是用burpsuite向 ip/port/1p.html发送请求,看返回的body 另一个是直接在浏览器上先查看源代码,在源代码页进入1p.html 可以看到给了一.

2021-03-04 23:27:42 416 1

原创 Web20:Cookies欺骗

在这里插入图片描述 打开一看,有一串字符,但是没什么意义,是用来迷惑大伙的。 在看url,发现有两个参数line 和filename,filename后一串Base64字符,解码后发现时是keys.txt 尝试/keys.txt,无果。 联想之前文件上传漏洞里,利用file参数可以获取后端代码。而这里有line和filename,有可能是某个文件的某行代码。 尝试将keys.txt和index.php分别用base64编码后 ,作为参数。以及设 line=2. 尝试发现可以获得,index.php中的代码

2021-02-17 16:50:54 193

原创 WEB17:SQL注入问题

思路: 依据常见的判断注入的方法,判断是数字型注入还是字符型注入。 利用 1’ and 1=1# 结果回显,1’ and 1=2# 结果不回显; 得出结论:字符型注入。 然后下边就是字符注入的常见思路了: 通过利用单引号闭合后,引入自己的代码,实现: 判断有表中有几个字段 order by eg: order by 3 根据第三列字段排序 输入 1’ order by 1~4 # 可以显示数据,而1’ order by 5#不行,说明有四列字段 试探有哪些字段会被在前端使用放到界面显示(判断回.

2021-02-09 19:00:20 196

原创 web16:备份是个好习惯(MD5函数绕过)

刚接触很懵逼

2021-02-09 15:27:14 186

原创 web9:flag在变量中,考察PHP变量基础知识?PHP有哪些系统变量可以容纳其他变量?——php超级全局变量

题目提示,flag在变量中。又读代码可知, 代码主要做了一个字符串正则匹配, /^\w+$/的意思是字符串成的开头和结尾都必须是若干的数字或者字母,或者下划线。 所以 如果传的参数中含有任何非字母,数字,下划线的字符,就会执行die()函数。也就是说断绝我们利用参数漏洞执行函数的可能,如web8那样。 现在知道,flag在变量里。 那么在哪个变量呢?这时,你就需要知道PHP有哪些系统变量可以包含flag相关的变量了; $_POST [用于接收post提交的数据] $_GET [用于获取url地址栏的参数数.

2021-02-02 21:27:04 687

原创 web8:文件包含(了解eval函数以及php文件操作)

文件包含,根据题目以及代码的意思可知,这个题目与php文件有关系。 flag应该就在flag.php文件中,又可知,eval函数是执行字符串的,var_dump是显示变量内容和结构的。 有两种解法: 闭合var_dump:http://114.67.246.176:19411/?hello=1);print_r(file(%22flag.php%22),利用漏洞,修改了eval的参数的内容。变为了 eval(“var_dump(1);print_r(file(‘flag.php’));”) eval将.

2021-02-02 20:34:56 858

原创 web12:本地管理员(http请求,伪造IP,XFF字段)

这道题,提示是IP禁止访问。看了答案以后,说是伪造本地IP。 不允许外来IP访问,那么应该就是本地IP可以访问了,本地IP又称回送地址,用于本地软件测试,进程间通信。 伪造本地IP的方法是在http头上加一个字段X-Forwarded-For:127.0.0.1 另外在网页源码里有一串Base64字符,解码后是test123 管理员系统的账号常为admin,所以猜test123是其密码。 所以伪造http头,加一个字段伪造来源为本地IP即可破解题目。 ...

2021-02-02 14:17:41 3637

原创 web11:网站被黑了 黑客会不会留下后门

这个主要就是御剑先扫到后门,然后发现要密码。。若干参数请求无果后,只能试试密码爆破了,结果burpsuite的自带字典就可,(害,俺的burpsuite社区版怎么没有自带字典。。。那个simpe list的playload count是0.。。好难受。。)。 反正还是印证了之前总结的个普通思路:有事没事先扫扫后门,看看情况再说。 ...

2021-01-29 22:34:47 414

原创 汇编语言王爽检测点11.1

关于mul al后sf值的问题 有点奇怪,有一个哥们 https://blog.csdn.net/zhangjiuding/article/details/79133961 运行之后sf =1, 我把他的代码运行之后是sf=0 网上多数答案是0,说是因为计算结果存在ax中,最高是0,所以sf=0 但我认为mul指令是无符号乘法指令,不影响sf的值。 看这个 ...

2021-01-04 14:58:28 800

原创 WEB7:你必须让它停下

这道题,一直在刷新。然后看到response的图片一直在变。flag隐藏在某个图片的response里。 这道题图片,可以用burpsuite的repeater一下一下试,最终找到答案。 拓展和新思路: 如果图片非常多呢?手动基本不可能的情况下,那就考试用python写个脚本,不断发送请求,查找每次返回内容,知道查到flag关键字。 ...

2020-12-18 19:27:24 150 1

原创 Web6:无限alert

点进去环境,一直弹alert,看F12里边html都没有。 思路1:想办法让浏览器禁止弹alert:。没有结果。 思路2:用工具向服务器发个请求看看,看到返回的结果里一堆alert,最后一行有个莫名的串,音乐隐约感觉到是某种编码。百度了下 &#+数字 是什么,结果Unicode相关。所以Unicode转中文即可解码一下即可。 关键:对于常见的编码的各种形式要了解。 "UNICODE编码。 这种编码的字符实体,使用&#x打头,后接 entity_number." ...

2020-12-18 19:07:24 266

原创 WEB5:矛盾

这个主要考察php语言的特性:数字 和字符串间的类型比较

2020-12-18 18:40:56 148 1

原创 CTF初体验:Web18秋名山车神

解题过程 进入环境 这个挺明确的,先不扫后台了 让两秒内算出结果,刷新下发现内容是变化的。 所以大概就是要用脚本,在两秒内,先发起请求得到页面,截取算式,利用eval计算字符串表达式的值。 算出结果后,还不知道怎么把结果给他。 先试下没参数post,结果返回了这么一段话 所以大概参数是value import requests import base64 s = requests.session() url = "http://114.67.246.176:15653/" res = s.post(

2020-12-14 21:08:23 763

原创 各种编码初略认识

Base64 Base64就是一种基于64个可打印字符来表示二进制数据的方法。 Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。采用Base64编码具有不可读性,需要解码后才能阅读。 编码后的结果: 比如这种:“6LeR55qE6L+Y5LiN6ZSZ77yM57uZ5L2gZmxhZ+WQpzogTkRNMk5qWXg=” 具体Base64作用以及其他细节,有时间补充。 ...

2020-12-14 20:11:59 18231

原创 CTF初体验:web19,速度要快。

解题过程 进来 什么都没有,只有一句话和一段英文 ## 不管怎么样,(1)先扫下后台,(2)先看看刚进来时的request和response (1)扫描到一个 index.php ,进去发现跟之前的没什么不同。 (2)发现刚进来 response里就有flag,然后刷新一下看看他是固定的还是变化的,发现flag是变化的 flag是变化的,把每次都flag都去试下,发现都不对。 又因为这是个base64编码的串,所以随便找一次的flag,先解码看下。 然后再去试下答案,发现还是不对。而且每次进入刷新

2020-12-14 20:03:30 963

原创 实验二 用机器指令和汇编指令编程

1.预备知识 实验1中学习了一部分debug程序命令的使用。 实验二中又进一步补充: (1)在D,E,A,U等带有内存单元地址的命令中, 都可以用段寄存器表示内存单元的段地址。 例如:查看当前代码段的指令代码 -d cs:0 (2)Debug的T命令在执行修改寄存器SS的指令时,下一条指令会紧跟着执行。 至于原因,与后边的课程有关:中断机制 2.实验任务 (2) 估摸着跟中断有关 ...

2020-12-09 21:28:11 205

原创 git部署余弦的ctf-wiki遇到的问题以及一些理解

第二步 pip install -r requirements.txt 直接在cmd里运行 报错 于是去查了 requirements.txt是个什么东西: python每个项目都有一个requirements.txt,用来记录项目依赖的一些包和工具等。 迁移项目的时候,我们不会将依赖一同迁移的,只需要携带这个文本文件,pip这个工具就可以根据此文本文件帮你在一个新环境里下载依赖。 所以可知, 找不到该文件,是因为没有把目录跳到git下来的那个项目里。 解决: 该依赖记录文件如下: ...

2020-12-07 00:02:02 815

原创 实验1:DOS下查看CPU和内存,用机器指令和汇编指令编程

该实验是在windows系统中进入DOS系统来进行实验的。 用到的dos系统下的程序为debug.exe. debug.exe程序 链接:https://pan.baidu.com/s/1jWFhRxACiqyKoSHqELUAWA 提取码:478f 另外64位的win10已经删除了debug.exe,所以我们需要下一个32位dos模拟器(我用的是dosbox)配合上边的debug.exe,进行本次实验。 什么是debug debug是windows和dos都提供的实模式(8086)程序的调试程序。该程序可

2020-12-01 14:31:43 1669

转载 理解 Python 迭代对象、迭代器、生成器

容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中。通常这类数据结构把所有的元素存储在内存中(也有一些特例,并不是所有的元素都放在内存,比如迭代器和生成器对象)在Python中,常见的容器对象有: list, deque, …. set, frozensets, …. dict, defau...

2019-04-03 22:50:32 117

转载 python学习笔记

python中set和frozenset方法和区别 set(可变集合)与frozenset(不可变集合)的区别: set无序排序且不重复,是可变的,有add(),remove()等方法。既然是可变的,所以它不存在哈希值。基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交集), difference(差集)和sysmmetric differenc...

2019-04-02 21:18:26 304

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除