说在前面

请教Hpdoger师傅Node.js的问题时,他给了我一道HackTM CTF 2020的Node.js题。花了几个小时看也没有很好的解决。最后还是他给了思路才把想整个过程理清楚。由于才刚刚学习node.js,文章中如果出现问题还希望师傅们指出来,十分感谢。

Read More

危险函数所导致的命令执行

eval()

eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。和PHP中eval函数一样,如果传递到函数中的参数可控并且没有经过严格的过滤时,就会导致漏洞的出现。

Read More

说在前面

在业内由于某些不可抗力的因素,我们不得不去做一些麻烦的事情来备份资料。为了尽最大可能挽留那些知识,也就有了这篇文章和最后的脚本。(文章和脚本写的都异常粗糙,希望师傅们不要介意。)

关于网站复制:

网站复制,也可称为网站备份。是通过工具将网页上的内容全部保存下来。当然不仅仅只是保存了一个html页面,而是将网页源码内所包含的css、js和静态文件等全部保存,以在本地也可以完整的浏览整个网站。网络上也有一些类似的工具,但使用起来并不理想。于是我打算自己写一个Python脚本,方便个人对网站的备份,也方便一些网络资料的收集。

Read More

Threezh1 Jokuuy Playmaker 2019年11月23日

离结束只有40多分钟了,web题ak了之后不会修… 把wp写一下吧。web四个题都是简单的代码审计题。

粤湾基金

地址: http://172.16.9.41:9005/

是一个TPshop的商城框架,界面如图所示:

Read More

OKLite介绍

OKLite是一套极简企业站系统,主要目标群体是展示型企业网站用户,让传统小企业快速布署网站,加强自身品牌意识,实现对公司形象的宣传。本系统最初是PHPOK程序精简而来。在同等配置下,OKLite速度优于PHPOK达30%以上。 (此版本在2018年已停止维护)

系统链接:https://www.phpok.com/oklite.html

Read More

说在前面

对于PHP反序列化,原来也就只是浅尝而止。最近看到很多题的出现了多种没有了解过的反序列化形式,就此进一步学习一下。其中很多内容都参考了师傅们的博客,部分内容经过自己的修改。如果存在错误,还望师傅们指出。

Read More

说在前面

这次参与了ByteCTF,尝试做了boringcode和EZCMS。虽然都没做出来,但是学到了很多东西。

这次通过ALTM4NZ师傅的wp来分析一下boringcode这道题并学习一下无参数函数的利用。

boringcode

看一下代码:

这个页面的作用是,接受一个url参数,利用file_get_content远程获取url页面的源码,传递给eval执行。但在url传递和源码传递过程中有各种检测。

Read More

前言

除了unserialize()来利用反序列化漏洞之外,还可以利用phar文件以序列化的形式存储用户自定义的meta-data这一特性,扩大php反序列化漏洞的攻击面。该方法在文件系统函数(file_exists()、is_dir()等)参数可控的情况下,配合phar://伪协议,可以不依赖unserialize()直接进行反序列化操作。

这次在比赛当中遇到phar反序列化,却不知道如何下手。社区里前面也有人总结过,但没有包括一些ctf利用和zxc师傅发现的姿势。于是就自己来整理了。

Read More

Threezh1 2019年8月22日

最近在接触一下协程,上手不易,拖了很长时间才把这个小框架完成。有些地方很简陋,后面慢慢完善吧。

做这个的想法是方便自己后面编写需要用到协程的脚本。(还有忘记协程的知识点了就过来复习)

Read More

1. exec()

使用exec来执行Python导入模块的命令。

2. __import__()

单独使用__import__() 可以直接加载模块,但是当需要动态加载类、函数时,就需要配合getattr来实现。

实现步骤:

  1. 获取模块名(module_name)
  2. 使用__import__(module_name)导入Python模块
  3. 使用getattr(module_name, class_name/function_name)获取类、方法的对象

Read More

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×