博客
关于我
BugkuCTF_Web——“web基础$_POST”、“计算器”、“矛盾”、“web3”、“你必须让他停下”
阅读量:796 次
发布时间:2019-03-25

本文共 1056 字,大约阅读时间需要 3 分钟。

网络安全实战训练 | flag获取解 pháp

网络安全漏洞的挖掘与利用,是如今的热门话题。以下是一些经典的web安全挑战及解决方案,供安全爱好者参考。


1. web基础$_POST

目标:通过$_POST获取flag

思路:我们需要找到能够提交给web服务器的方法,从而获取隐藏的flag信息。常见的web安全方法包括xss漏洞、csrf攻击以及利用$_POST直接获取参数值等。

解决方案:使用浏览器插件Hackbar(推荐使用Edge浏览器或Microsoft商城版本的插件)来测试网页输入框的值。按照提示,输入特定的命令序列(如sssa),发现flag值为flag{bugku_get_ssseint67se}


2. 计算器

描述:网页是一个简单的数字运算器

尝试:网页的maxlength属性限制了输入长度,默认无法输入超过一定数量的字符。

解决方案:使用F12开发者工具检查页面源码。定位maxlength属性,修改或删除它后尝试提交表单。正确答案为flag{CTF-bugku-0032}


3. 矛盾

描述:PHP代码中存在条件矛盾

代码逻辑如下:

$num=$_GET['num'];if(!is_numeric($num)){  echo $num;if($num==1)echo 'flag{**********}';}

尝试:网页提示num必须是数字,但同时要求num=1却不能输出数字。

解决方案:将num设置为1a(非纯数字但值为1),则满足num==1的条件输出flag{bugku-789-ps-ssdf}


4. Web3

描述:页面涉及重定向或动态生成

尝试:尝试禁用JavaScript,发现页面无法加载。或使用view-source直接查看源码。

解决方案:发现源码中存在HTML注释:

解码后,flag值为flag{KEY{J2sa42ahJK-HS11III}}


5. 你必须让他停下

描述:动态页面与反爬机制

尝试:禁用JavaScript后仍无法获取flag,怀疑是无限刷新保护机制。

解决方案:使用Fiddler抓包工具,发现页面返回的数据是空的网页。但某次抓包发现页面内容长度为421,解码后得到flag{dummy_game_1s_s0_popular}



通过这些实战挑战,我们可以看出,web安全中既需要理论知识,更需要实践操作力。掌握这些基础方法,将有助于你在未来的网络安全挑战中脱颖而出。如果对某一题有疑惑或需要进一步说明,请探讨在评论区。

转载地址:http://nnpuk.baihongyu.com/

你可能感兴趣的文章
NDK编译错误expected specifier-qualifier-list before...
查看>>
Neat Stuff to Do in List Controls Using Custom Draw
查看>>
Necurs僵尸网络攻击美国金融机构 利用Trickbot银行木马窃取账户信息和欺诈
查看>>
Needle in a haystack: efficient storage of billions of photos 【转】
查看>>
NeHe OpenGL教程 07 纹理过滤、应用光照
查看>>
NeHe OpenGL教程 第四十四课:3D光晕
查看>>
Neighbor2Neighbor 开源项目教程
查看>>
neo4j图形数据库Java应用
查看>>
Neo4j图数据库_web页面关闭登录实现免登陆访问_常用的cypher语句_删除_查询_创建关系图谱---Neo4j图数据库工作笔记0013
查看>>
Neo4j图数据库的介绍_图数据库结构_节点_关系_属性_数据---Neo4j图数据库工作笔记0001
查看>>
Neo4j图数据库的数据模型_包括节点_属性_数据_关系---Neo4j图数据库工作笔记0002
查看>>
Neo4j安装部署及使用
查看>>
Neo4j电影关系图Cypher
查看>>
Neo4j的安装与使用
查看>>
Neo4j(1):图数据库Neo4j介绍
查看>>
Neo4j(2):环境搭建
查看>>
Neo4j(3):Neo4j Desktop安装
查看>>
Neo4j(4):Neo4j - CQL使用
查看>>
Neo图数据库与python交互
查看>>
NEO改进协议提案1(NEP-1)
查看>>