- 2024-11-12[SUCTF 2019]CheckIn 1
[SUCTF2019]CheckIn1打开实例,发现文件上传页面根据题目提示,查看网页源码这边提示系统会创建一个访问者的IP地址的MD5哈希值作为目录,并在其后拼接index.phpPOST上传的upload参数,文件名不能为空,不能过大,不能包含ph和htacess,不能有<?,并且限制上传类型为image,如果满足以上
- 2024-11-11[SUCTF 2019]EasySQL
当输入数字时返回array结构,且任意非0数字都是返回1。当输入字符串时无任何回显。那么我们可以猜测sql语句中存在逻辑或符号||,因为任意非0在mysql中相当于true且返回值为1,而字符及字符串会被当作变量处理,或运算时会报错。那么绕过的方法是将mysql的sql_mode参数设置为PIPES_AS_CO
- 2024-11-08[SUCTF 2019]EasySQL 1
[SUCTF2019]EasySQL1根据题目所得是个sql注入题,尝试万能密码显示不对,说明存在输入过滤,尝试堆叠注入1;showdatabases;成功显示数据库列表,并且发现数据库ctf查询数据表,查询出表Flag1;usectf;showtables;尝试select*fromFlag;发现出现错误\思考其sql语句为se
- 2024-11-02[SUCTF 2019]EasySQL
题目链接:https://buuoj.cn/challenges#[SUCTF2019]EasySQL打开环境后,如下所示。尝试输入字符:1。尝试输入字符:0后,发现没有输出结果。尝试输入字符串"aaa"、"bbb"等后,发现都跟输入0的结果一致,而输入123、456等非0的内容,都与输入1一致,这里可以猜测(实际上需要比较
- 2024-10-31[SUCTF 2019]EasySQL
题目链接:https://buuoj.cn/challenges#[SUCTF2019]EasySQL打开环境后,如下所示。尝试输入字符:1。尝试输入字符:0后,发现没有输出结果。尝试输入字符串"aaa"、"bbb"等后,发现都跟输入0的结果一致,而输入123、456等非0的内容,都与输入1一致,这里可以猜测(实际上需要比较
- 2024-07-31[SUCTF 2019]Pythonginx (unicode转IDNA域名分割漏洞)
代码我看到这两个就感觉有问题了,第一个转编码这个搜了一下是unicode转idna的问题,第二个urlopen是Python标准库中urllib.request模块中的一个函数,用于向指定的URL发送HTTP请求并获取响应参考文章:https://xz.aliyun.com/t/6070?time__1311=n4%2BxnD0DgDcmG%3DrDsYoxCqiIQ7KDtH
- 2024-07-29[SUCTF 2019]CheckIn
[SUCTF2019]CheckInStep发现上传文件试验后,Yourdiruploads/40faad96d40fbac7603474024cbb933aYourfiles:array(5){[0]=>string(1)"."[1]=>string(2)".."[2]=>string(9)".user.ini"[3]=>string(5)"1.jpg"
- 2024-07-24[SUCTF 2019]Pythonginx(url中的unicode漏洞引发的域名安全问题)
@app.route('/getUrl',methods=['GET','POST'])defgetUrl():#从请求中获取url参数url=request.args.get("url")host=parse.urlparse(url).hostname#第一处检查主机名是否为'suctf.cc'ifhost=='s
- 2024-07-15[SUCTF 2018]GetShell 1
自增绕过,文件上传打开是一个白的页面,开始信息收集,可以在前端代码中看到,index.php?act=upload尝试访问之后发现是文件上传发现是直接给了源码的,代码解释:这段PHP代码用于处理一个通过HTML表单上传的文件,并检查该文件的内容是否包含任何黑名单中的字符。下面是逐行解释:if($co
- 2024-07-12[SUCTF 2019]Pythonginx 1
目录题目代码分析urlsplit()nginx文件位置解题题目代码分析fromflaskimportFlask,Blueprint,request,Response,escape,render_templatefromurllib.parseimporturlsplit,urlunsplit,unquotefromurllibimportparseimporturllib.requestapp=
- 2024-04-27[SUCTF 2019]Pythonginx
[SUCTF2019]Pythonginx打开环境@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")host=parse.urlparse(url).hostname//urlparse对url中的各个组成部分进行分割ifhost=='suctf
- 2024-03-17CTF练习日记——[SUCTF 2019]EasySQL 1
查询1试试试试堆叠注入1;showdatabases;#来查询数据库,以及1;showtables;#查询表再看看表里面的字段名1,showcolumnsfromFlag;#显示nonono,到这里之后我不太懂就参考了http://t.csdnimg.cn/MHwz1,利用1;setsql_mode=PIPES_AS_CONCAT;select1,得到flag:flag
- 2024-03-13文件上传[SUCTF 2019]CheckIn
文件上传[SUCTF2019]CheckIn打开提交js图片马后台检测文件类型在木马出添加GIF89a绕过显示上传成功的地址uploads/f65a0ca982c669865231909b0ec85a0c上传.user.ini解马关于.user.ini和.htaccess后者有局限性,只能用于apache前者只要能运行php都可用auto_prepend_file
- 2024-01-30[SUCTF 2019]Game
[SUCTF2019]Game两个附件,一个是zip压缩包,里面有html、CSS和JS的文件,另外一张是图片在index.html里发现一串经过base32编码的字符串解码后得到suctf{hAHaha_Fak3_F1ag}但是这不是flag在图片里发现有LSB隐写解码发现前面是Salted,得知这是DES加密前面得到的flag是密钥,
- 2023-12-0404-python代码审计
eg1:@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")host=parse.urlparse(url).hostname#解析主机名ifhost=='suctf.cc':return"我扌y
- 2023-11-18 [SUCTF 2019]CheckIn
有上传文件的按钮,猜测是上传漏洞上传php不行,.php3,.php5,.phtml等都不行改成jpg,检测到了内容<?不通过,那就再换一种方式<scriptlanguage='php'>assert($_REQUEST['cmd'])</script>检测到文件不是图像,很明显是用exif_imagetype()函数,函数功能是读取一个图像的第一个字节并检
- 2023-11-02[SUCTF 2019]CheckIn
题目给出了源码,如下。<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><metahttp-equiv="
- 2023-10-25[SUCTF 2018]MultiSQL1
0x01注入点发现登录,注册页面都尝试了一下,没有可以注入的地方但是获取了有一个比较关键的信息:admin是其中已经存在的一个用户按照正常流程注册登录:注意url中的id值,修改id=1之后:可以猜测,id是有一个get注入点。0x02注入类型判断可堆叠注入和过滤(select,union)是怎么看出来
- 2023-10-07Flask审计+Nginx读取
来自:[SUCTF2019]Pythonginx打开还是源码,直接审计:fromflaskimportFlask,Blueprint,request,Response,escape,render_templatefromurllib.parseimporturlsplit,urlunsplit,unquotefromurllibimportparseimporturllib.requestapp=Flask(__name__)#In
- 2023-10-04[SUCTF 2019]EasySQL 1
原理||的不同功能,连接字符串和或堆叠注入解题过程进入靶场,按常规进行注入,发现过滤了很多关键字,跑一下fuzz试试堆叠注入payload:1;showtables;得出放flag的表,但flag字段被过滤了。看wp原代码查询语句是select$_POST['query']||0fromflag;但我们不知道源码....从尝试
- 2023-07-19[SUCTF 2019]EasySQL
[SUCTF2019]EasySQL题目来源:buuctf题目类型:web涉及考点:SQL注入、堆叠注入1.题目给了一个输入框,先随便传点东西进去传入数字回显如下:传入flag回显如下:传入字符无回显没什么其他线索了,还是爆破一下看看过滤了哪些字符:返回长度为507的字符都是被过滤了的,包括uni
- 2023-06-27[SUCTF 2019]Pythonginx
源码:@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")#获取urlhost=parse.urlparse(url).hostname#获取主机名例如:http://www.baidu.com/index.php?a=111会读取到www.baidu.com
- 2023-06-19BUUCTF:[SUCTF 2019]Pythonginx
@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")host=parse.urlparse(url).hostnameifhost=='suctf.cc':return"我扌yourproblem?111&q
- 2023-06-03[SUCTF 2019]EasySQL 1 做题笔记
题目考察的是SQL注入,先找一些常用的SQL命令1.判断注入类型:简单的注入类型有字符型和数字型2.判断列数?id=1’orderby4#?id=1'unionselect1,2,3#3.判断库名?id=1'unionselect1,database(),3#4.判断表名?id=1'unionselect1,group_concat(table_name),3
- 2023-05-06WEB|[SUCTF 2019]Pythonginx
源码@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")host=parse.urlparse(url).hostnameifhost=='suctf.cc':#解析主机名,不能是suctf.ccreturn