ShallowRiver

ShallowRiver

Hack the World!

有关flask开启debug模式中PIN码生成的流程
从今年上半年打ctf就对flask这个框架很感兴趣,大型比赛遇到的flask题目还挺多,涉及了ssti模板注入,客户端session,以及flask开启debug模式PIN码生成的命令执行等等题目,自己当时水平有限加上没有时间研究,暑假来补坑。这篇就打算写一下关于flask的PIN码(华中赛区国赛就有一道,太菜没做出来) 1.PIN码产生的原因在测试环境中,为了方便对应用进行调试,通常在设置中会开启debug模式,当程序报错时,可以在web页面上直接进入交互式python shell对程序进行调试,但是要进入这个交互式shell必须要输入服务端生成的PIN码进行验证那么问题来了,这个PI...
python环境的一些问题
之前对python与pip共存的问题做出了一些解决,参考了链接:https://blog.csdn.net/xc_zhou/article/details/80700626?tdsourcetag=s_pcqq_aiomsg但是最近学习flask需要使用虚拟环境,发现根据链接教程python无法正确创建虚拟环境,pycharm也无法使用自己在原链接基础上做了一些更改1.将python2和python3的目录均添加到环境变量2.将python2中的python.exe和pyhthonw.exe分别重命名为python2.exe和pythonw2.exel;不要对python3进行修改。3....
二次注入
原先遇到过二次注入的题目,当时不太清楚原理暑假有时间记录学习一下,下面找一个简单的例子帮助理解 1.原理二次注入就是在字符型注入时,没有对用户输入的一些特殊字符进行过滤,导致用户可以先构造注入闭合单引号,再通过第二次构造注入语句,在第一次注入的基础上再进行注入 2.代码审计下面给出一个留言板的代码123456if (isset($_POST['submit']) && !empty($_POST['message']) && isset($_SESSION['username'])) {...
攻防世界 ctf 新手入门
早就听说攻防世界这个ctf平台,抽空做了一下上面web新手入门题目,题目与都挺基础,记录一下wp 1.view_source没啥好说的,查看页面源代码得到flag 2.get_post使用hackbar分别get和post两个值即可 3.robots这个题考查robots协议,直接查看网站根目录的robots.txt,之后访问disallow的目录即可得到flag 4.backup这题考察备份文件漏洞,访问index.php.bak下载后得到flag 6.disabled_button这题考察前段只是,直接F12去掉按钮的disabled属性,点击获得flag 7.simple_js输入...
RSA
http://factordb.com/涉及3个参数: n e d, 其中 {n, d}为私钥,{n, e}为公钥 phi(n) = (p-1) * (q-1)d为e膜phi(n)的逆元(phi(n)为n的欧拉函数) ed ≡ 1 (mod phi(n)) 加密解密过程:c密文,m明文加密:c ≡ m^e(mod n)解密:m ≡ c^d(mod n) rsa中e为随机选取的一个数,一般为65537n由两个大素数(p,q)之积组成,公钥{n,e}为公开的,要破解rsa就得求出d,d为e模phi(n)的逆元,要求出phi(n),必须分解n求得p,q,从而求得phi(n)=(p-1)*(q-...
php本地文件包含,php伪协议
Bugku-welcome to bugkuctf查看源代码,本体牵扯到两个伪协议首先查看源代码如下: <?php $user = $_GET[“txt”]; $file = $_GET[“file”]; $pass = $_GET[“password”]; if(isset($user)&&(file_get_contents($user,'r')==="welcome to the bugkuctf")){ echo "hello admin!<br>"...
iscc web6
Web6 Writeup题目主要考察jwt(json web token)的知识,涉及到密码学的签名认证,要想办法伪造管理员的token来通过验证1.首先查看源码,发现了加载了common.js文件,查看该文件源码发现文件末尾定义了一个getpubkey()函数 function getpubkey(){ / get the pubkey for test /pubkey/{md5(username+password)} /访问该路径得到公钥内容(\n记得手动转义换行)123456-----BEGIN PUBLIC KEY-----MIGfMA0G...
scrapy
Scrapy爬虫入门开发环境manjaro+python3 1.安装Scrapysudo pip install scrapy 这里更换镜像源安装会快点,在~/.pip/pip.conf中添加以下内容即可 [global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple [install] trusted-host=mirrors.aliyun.com 2.Scrapy框架
git小计
Git版本控制Git的用法以及相关配置windowsgit提供两种连接github远程仓库的方式——https和ssh(二者的区别在于https使用时需要输入github的账号和密码而ssh则可以实现免密登陆)首先我们需要把自己电脑的ssh公钥添加到github上(文件位置一般在C盘的user/.ssh目录下,没有ssh的话使用gitbash输入ssh-keygen -t rsa -C “email@email.com“即可,然后复制github_rsa.pub的内容到Key中点击按钮)首先在安装好Git后需要先进行全局配置,在bash下输入如下两条命令即可 git config --g...
ctf条件竞争
最近在做ctf中遇到了一些文件上传题目,记录一下有关条件竞争的题目所谓条件竞争就是指我们上传文件的速度和后端服务器删除我们文件的速度进行竞争,竞争成功就返回我们想要的结果(通常是构造的一些脚本文件,例如一句话木马等) 下面给出一道例题链接如下:http://119.23.73.3:5006/web2/uploadsomething.php?filename=58758&content=1 根据提示访问他给出的链接,返回too slow!说好的flag跑哪里了呢?我们传给服务器的文件显然再我们还没有来得及访问的时候就被它给删除了,这里联想到了条件竞争,怎么办呢?很简单,一直上传文件...
avatar
ShallowRiver
Do you believe fate?
FRIENDS
gtfly friendB