自定义博客皮肤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 240

原创 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 155

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

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

2022-03-07 18:02:19 149

原创 五分钟理解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 191

原创 BUGKU_Simple_SSTI_1

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

2021-06-05 04:13:00 807

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

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

2021-05-25 09:53:11 1997

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

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

2021-04-12 23:35:20 499

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

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

2021-04-12 09:33:44 357 1

原创 模板注入漏洞

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

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

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

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

2021-03-25 16:58:18 143

原创 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 332

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

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

2021-03-22 11:28:09 212

原创 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 78

原创 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 332 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 148

原创 WEB17:SQL注入问题

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

2021-02-09 19:00:20 101

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

刚接触很懵逼

2021-02-09 15:27:14 123

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

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

2021-02-02 21:27:04 482

原创 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 694

原创 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 2584

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

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

2021-01-29 22:34:47 349

原创 汇编语言王爽检测点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 711

原创 WEB7:你必须让它停下

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

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

原创 Web6:无限alert

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

2020-12-18 19:07:24 174

原创 WEB5:矛盾

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

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

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

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

2020-12-14 21:08:23 668

原创 各种编码初略认识

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

2020-12-14 20:11:59 17887

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

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

2020-12-14 20:03:30 740

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

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

2020-12-09 21:28:11 142

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

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

2020-12-07 00:02:02 652

原创 实验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,进行本次实验。什么是debugdebug是windows和dos都提供的实模式(8086)程序的调试程序。该程序可

2020-12-01 14:31:43 1441

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

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

2019-04-03 22:50:32 79

转载 python学习笔记

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

2019-04-02 21:18:26 217

空空如也

空空如也

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

TA关注的人

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