- 博客(51)
- 收藏
- 关注
原创 Upload-labs 靶场搭建 及一句话木马的原理与运用
看吧,没有建房材料就只有地基(毕竟我们选择的目录只到www,想要构建upload-labs靶场的“房子”它是没有办法在根目录上找到uploads-labs,因为127.0.0.1的域名创建到了upload-labs文件的上一级,它。这里记得改一下解压缩后的文件夹名字(主要是为了方便后面搭建网址方便一些,没有那么麻烦),就设置为upload-labs即可,或者直接upload。因为我们下载的upload-labs这些文件是为靶场准备的,如果不选择到upload-labs目录,它相当于没有。
2025-03-31 22:28:47
1175
原创 kali利用msf渗透Windows电脑测试
MSF集成了数千个已知的软件漏洞利用模块,支持针对不同平台(如Windows、Linux)和服务(如SMB)的漏洞攻击。例如,著名的永恒之蓝漏洞 (MS17_010)就是通过MSF进行利用的。
2025-03-28 19:42:05
883
原创 刷刷刷刷刷
诶,别忘了id=1时有正常查询结果,会将id=1000进行覆盖,而id=2时查询结果才为空,所以需要将1改为2。由于使用的 || 前部分id=2查询结果为空,没有返回信息,所以只会返回id=1000时的信息,即flag。(id=1000),然后||连接的整体用于绕过intval函数 (如 id=1 || id=1000)首先,刚刚的第4条,intval函数在遇到 id=2 后面的 || 字符时,停止转换,取id的值为2。,这么一来或许可以利用特殊字符(逻辑或||)来绕过intval函数的转换。
2025-03-24 17:52:32
680
原创 JavaScript与客户端开发(2)
所以呢,JavaScript可以使数据的有效验证在客户端进行,然后对于遗漏或无效数据等,在表单提交到服务器之前得到验证并立即反馈给用户,避免了无效的网络传输。现许多网页都含搜索功能。将JavaScript核心语言部分和客户端扩展结合起来,通过脚本对页面上的对象进行控制,完成比如在页面中处理鼠标单击、表单输入以及控制页面的浏览等功能,哎呀后面那部分我也看不懂,就不写了。同样是在核心语言的基础上扩展了在服务器上运行时需要的对象,这些对象可与数据库互联,也可对服务器上的文件进行控制,还可以在应用程序间交换信息。
2025-03-21 19:08:38
362
原创 JavaScript与客户端开发
比如 一般简单的情况下我们会直接使用弹层的形式来进行处理,但是有的时候是一个复杂页面,需要弹窗显示,新开页面在另一个页签显示还达不到效果,所以我们需要让浏览器打开一个新的页面,并弹出来在当前页面之上,下面我们来看一下代码实现。动态改变页面内容:HTML页面是静态的,一旦编写,内容是无法改变的。从另一方面说,它属于解释性编程语言,使开发更简单和方便,而它的语法和结构与C、C++、C#、Java都十分相似,不同之处在于其运行时不会出现独立的运行窗口,运行结果是借助浏览器来展示的。
2025-03-21 00:47:23
341
原创 汇编基础知识
CPU:一种可以执行机器指令进行运算的芯片(微处理器)。存储器(内存):存放CPU可以工作的指令和数据(指令和数据都是二进制信息)。磁盘不同于内存,磁盘中的数据要读到内存中才能被CPU使用存储器分若干存储单元,并从0开始按顺序编号(一个存储器有128个存储单元,编号0~128)电子计算机最小信息单位是bit(比特),即一个二进制位。8个bit(8个二进制位)组成一个字节(Byte)。大容量存储器计量容量的单位(磁盘单位也一样):1KB=1024B1MB=1024KB1GB=1024MB。
2025-03-17 22:45:38
1357
原创 二进制运算 栈的基本概念及原理与IDA快捷键的使用
比如刚才的例子1010异或1110的结果为0100,然后用0100再异或1111得到的结果任然是1011(与1010同或1110的结果是一样的)异或有几种不同的表示方式,在程序中一般用符号 ^ 表示,而在书写时或模拟电路中,可以用XOR或者是 ⊕ 表示。这里要记住程序中一般没有同或运算符,不过有异或,所以可以用两个数的异或结果再次异或1即可得到同或的结果。任意一方为0或同时为0时,结果为0。或运算可以用 | 表示,在程序中一般使用 || 表示。与运算的规则为:同时为1,结果为1;任意一方为1,结果为1;
2025-03-13 17:18:03
339
原创 XSS跨站脚本攻击
XSS全称(Cross Site Scripting)跨站脚本攻击,为了避免与css层叠样式表名称冲突,所以改为xss,是最常见的web应用程序安全漏洞之一。它指的是恶意攻击者往web页面里插入恶意html代码(JavaScript代码加工到index.html文件中),当用户浏览该页之时,嵌入web里面的html代码会被执行,从而达到恶意用户的特殊目的(如得到目标服务器的shell)。
2025-03-12 17:50:45
363
原创 云曦春季开学考复现(2025)
趁热打铁,昨天刚学的RSA,既然有p有q,也有e,而n=p*q,可以算出欧拉函数值phi=(p-1)*(q-1) 而这里因为昨天学到d*e=1 mod phi,所以libnum.invmod(e,phi)函数的作用就是求一个整数d,使得(e*d)%phi(除以phi取余)=1,求出d以后,就可以从c=(e,m,n)的模幂运算入手反推m。虽然出flag了,,但我突然想到一个问题,我没用到dp和dq啊,附件既然给了dp dq肯定有用,但又不知道怎么用,于是扔进 AI让其帮我解读一下。
2025-03-08 18:08:17
426
原创 RSA的理解运用与Pycharm组装Cryptodome库
RSA通常指基于RSA算法的密码系统,令我没想到的是,其名字的来源竟然不是某个含有特别意义的单词缩写而成(比如PHP:Hypertext Preprocessor(超文本预处理器)),而是由1977年提出该算法的三个歪果仁的姓氏首字母这么很随意的拼接起来的(Ron Rivest、Adi Shamir和Leonard Adleman),可它却是首个既能用于加密又能用于数字签名(这个还不懂什么是签名,书上是这么说的,反正不是真的 签名)的非对称加密算法。选择两个大素数(我做题遇到的通常是1024位的)p和q。
2025-03-07 23:07:23
999
原创 SQL注入的原理及详细运用
ok,上面所说的是正常情况下,那假如我输入的是一组构造的恶意数据,同样的步骤,我们上传给服务端以后如果它没有做任何的处理就直接发送给数据库,此时在数据库执行select语句进行数据查询与比对时,如果这个恶意数据就是一个SQL语句,那么SQL语句就会参与执行select拼接到SQL语句里面,这样的话恶意数据的SQL语句就会开始执行,造成利用SQL注入漏洞(查询数据 读写文件 执行命令)但所有的漏洞(SQL漏洞、XSS漏洞、CSRF漏洞等)都是有条件的。SQL注入实际上就是把用户输入的数据当做代码执行。
2025-03-05 13:41:57
513
原创 文件上传漏洞详细利用流程
这里有一个题在我前两天的《学到什么记什么》里也记录过让我对蚁剑有点模糊的地方,尝试蚁剑,本来url拼接我怎么都连不上,后来意识到刚访问图片都没拼接主要网址,而是只单独访问图片地址,所以就单独用图片地址就连上了,密码么,我发现a也可以cmd也可以这个就不清楚为什么。“后门”有些贬义,网上的正面称呼应是“远程管理工具”,现在一般网管对远程网站进行维护管理,就通过类似功能的工具来操作,所以,可以理解为后门是双刃剑的典型黑客技术,因为它也可以作为黑客控制网站后日后进出网站的方便之门。
2025-03-04 22:19:14
1193
原创 学到什么记什么(25.3.3)
那就开始尝试蚁剑,本来url拼接我怎么都连不上,后来意识到刚访问图片都没拼接主要=网址,而是只单独访问图片地址,所以就单独用图片地址就连上了,密码么,我发现a也可以cmd也可以这个就不清楚为什么。之前一直以为连蚁剑的密码跟上传的木马中【" "】中的字符有关,不过这题的木马都没有上传这种新式的,还能连上,而且密码不限 ...然后...没错,我又随便输入了一下发现abc也可以,同样的方法,先找一张jpg图片,抓包上传改后缀名filename为.php,加入一句话<?
2025-03-03 20:34:34
255
原创 Pikachu
更改后保存好,打开phpstudy ,新建网站,域名设置为pikachu,端口设置为8088(任意都行,不被占用即可)php版本为5.6.9,然后确定。然后用vscode打开pikachu中www文件夹下inc中的config.inc.php。然后下载pikachu,解压到phpstudy文件夹下的www文件。将账户和密码改为和phpstudy中的一致(默认都是root)同样的,先下载安装好phpstudy。最后点击管理,打开网站即搭建成功。搭建成功后的网站点击安装\初始化。
2025-03-01 23:23:03
263
原创 Upload-labs
提示为js对不法文件进行了检查,前段验证的话进行bp抓包,然后直接修改后缀名为php.,然后Forward完成上传。先选择php文件<?
2025-02-24 16:27:20
290
原创 easyPytHon_P
那么题中就是取cmd中前三个为命令,param为命令参数,_file_是当前文件路径(当param中传入的也是文件路径参数时,命令行会根据这两个路径参数分别执行成两条命令,输出两个结果);第二个cwd为当前工作路径,os.getcwd()就是返回进程的当前工作目录;subpeocess模块下的run函数可以执行命令,其具体的参数有很多,我们题中这里主要有三个:第一个args是最重要的,它就是要执行的命令。注意它必须是一个列表,里面的内容包括了命令和命令参数,例如,分析过后其实就是命令执行题。
2025-02-15 18:02:10
172
原创 ctfshow 隐写6
仔细观察播放发现左声道是摩斯电码,然后利用摩斯电码音频解码工具。用法为先Upload上传导出文件再Play运行,解码得flag。先将音频导出为MP3或wav格式,打开工具进行解密。点开下载链接后下载的音频用Audacity打开。
2025-02-14 19:07:18
215
原创 ctfshow web12
有cmd变量,使用glob匹配文件名构造payload:/?查看源代码后得到<!又得到很长的php文件,那就使用高亮函数。
2025-02-13 15:06:47
158
原创 ctf.show 无一幸免_FIXED
会发现其他正常输出,而唯独在int64取值临界点的数发生报错,那让源码中条件判断赋值报错,是否能执行else语句输出flag?$arr[]=1恒真条件的意思为在数组后添加元素1,而64位有符号数,能表示最大数为2^63-1 =9223372036854775807,其实可以在php中运行看看超出取值会如何。运行后发现在int64取值范围内的数被正常输出,临界值也一样,但超出即便是1,它就由整数型变为浮点型(不是很理解,大概就这么个意思)再根据代码条件判断,能否验证一下是否能构造出符合条件的参数。
2025-02-11 23:27:56
220
原创 BUUCTF Crypto Windoes 系统密码
因为MD5加密的可以是16位也可以是32位,所以我尝试把前后两组连起来解密过也把分开分别解密过,但都直接没有结果,考虑到之前也出现过同样的题不同的工具解密结果不同,然后我又换了随波逐流中的MD5解密,尝试了两次后发现后半段解密结果为good—luck,和之前的flag很类似。下载附件,是一堆字符,没有头绪。用flag{}包裹提交后正确。
2025-02-10 11:25:01
208
原创 Reverse1 [BUUCTF]
可以看到代码将str2的长度赋值给v2,双击str2查看str2的值,选中并使用R键将ASCLL转成字符(str2中指定字符转换)sub_1400111D1为输出函数,("%20s",&Str1)为输入函数对Str1进行赋值 strncmp()为判断字符串是否相等,相等为0.既然是64位的那就放入对应位数的IDA,发现有点像flag的字符串{hellow_world},但提交后发现不正确,那就继续查找有用信息,看到flag字样随即F12+shift键查看字符串有关信息。
2025-01-26 19:42:35
142
原创 BUUCTF RSA
除了这题外,还有其他的题型也可以用这个解,例如给出n和e,输入点击FactorN(分解),先得到p q的值再重复上面的步骤就可以了。题目同样给了p q的值,让求d。上次是运行脚本解的,这次学到RSAtoool2这个工具的用法。Public Exponent使用十六进制的数,如这题e=17就设置为11;p q的值直接带入,最后点击Calc.D,即可获得d的值。又学习到一种新的工具,操作简单但理解起来还是需要花点时间。大致方法为先将Number Base设置为十进制;得到的d值用flag{}包裹提交。
2025-01-25 13:40:57
146
原创 [SWPUCTF 2022 新生赛]numgame
发现右键 F12 ctrl+u均用不了手动添加 view-source:或从右上角开发者工具打开源代码 src="./js/1.js " 发现有一个前往网页的标签,访问后看到NSSCTF{}就以为是flag。其中的hint2.php文件尝试直接访问,提示类为nss2,继续访问,得到空白页面,刚开始以为没刷新出来,可好一会儿仍是空白。这肯定不对,冷静下来才发现{}里的部分才是base64加密。仔细观察才发现这个很像base64编码,于是就直接解码了。最后尝试查看源代码,发现flag。
2025-01-24 11:11:37
153
原创 ctfshow 遍地飘零
var_dump()打印出变量的类型、长度、值。这题进行了$flag的判断,证明存在$flag,而只有var_dump()可以输出,那么我们让$_GET=$flag就可以得到flag了(令_GET=a,有$key=_GET,$value=a,则value=$a,GET传入即可)foreach($arry as $key => $value){}将数组arry的键值分离,$key是键,$value是值。打开链接是PHP代码,先进行分析。
2025-01-21 19:38:40
238
原创 ctfshow web3
打开环境后看到是include得知这应该是文件包含漏洞。查看ctf_go_go_go文件,得到flag。再查询当前目录下的文件结构。先测试,发现回显成功。
2025-01-19 16:51:54
166
1
原创 【SWPUCTF 2021 新生赛】include
观察代码后发现这里应该就是php://filter的使用了,上图百度中已经给出了它的用法,那就按格式直接请求。随后得到一串字符,经过观察的确是base64加密,然后解密就得到flag了。但发现直接请求PHP后又返回第一个界面,那就是伪代码了。然后上网再学习一下PHP伪协议的相关知识。打开环境后让上传一个file,那就传。上传file后得到关于flag的提示。
2025-01-18 16:26:21
186
原创 ctfshow 化零为整
原来是统计字符串的个数,这样一来想要绕过die()得到flag,而get传入的数组中字符串的长度不能超过1,这里要将“大牛”使用url进行编码,但一个汉字会编码出三个字符,所以需要将它截断,先编码。count的意思是计数,所以count()应该就是用来统计数组的个数,然后查一下strlen()的作用。这里分析代码一定要记得截断,毕竟代码限制字符串长度不能超过1,否则忘了就会出现我这种情况。编码后用=参数截断就可以GET传入得到flag了。
2025-01-17 21:55:39
240
原创 ctfshow 驷马难追
大概意思就是preg_match()用于匹配正则表达式,当匹配字符出现在正则表达式中时,返回1。而这题要获得flag就需要绕过die()但不能出现正则表达式中的字符,所以要用算数使or左边的等式成立。前面的函数之前已经了解过,现在查一下preg_match()函数。通过计算得知需要num=114514+1805296,传值。得知加密字符后就可以通过url进行传值得到flag了。打开环境后是PHP代码,先进行分析。没有结果,原来忘了对+进行加密。
2025-01-16 19:30:41
241
原创 CTFSHOW 损坏的压缩包
这个时候就注意到表头是一个png文件,而题目又叫损坏的压缩包,这应该就是打不开的原因。于是直接修改文件后缀zip为png。修改之后附件就是一张图片就可以打开了,打开之后就得到flag。下载附件后发现根本打不开,我还以为是我电脑出问题了。就连平常经常使用的文件压缩资源管理器也莫名其妙起来。只好给它放入010看一下。
2025-01-15 17:24:19
190
原创 BugKu eval
注意到包含一个名为flag.php的文件,则要对其进行读取,可以用里面的hello参数和强大的超全局变量$GLOBALS(上网查询了有关信息)去找flag。发现并没有flag,那应考虑flag成为了该文件的注释,所以找不到所以用文件读取,发现了flag。点开环境后,观察这串代码。
2025-01-13 17:59:05
156
原创 Web HTTP协议 302跳转
打开Burpsuite进行抓包,将包发送到重放器中,点击发送即可得到flag.打开环境,点击give me flag,跳转到了原页面。
2025-01-13 10:01:10
201
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人