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

关键字网站采集周口网站设计制作

关键字网站采集,周口网站设计制作,做图片网站会被,深圳网络营销招聘目录 PHP-属性权限特征-共有&私有&保护 PHP-绕过漏洞-CVE&字符串逃逸 PHP-原生类获取&利用&配合 原生类利用简单案例Demo-XSS PHP-属性权限特征-共有&私有&保护 1、对象变量权限: public(公共的):在本类内部、外部类、子类都可以访…

目录

PHP-属性权限特征-共有&私有&保护

PHP-绕过漏洞-CVE&字符串逃逸

PHP-原生类获取&利用&配合

原生类利用简单案例Demo-XSS


PHP-属性权限特征-共有&私有&保护


1、对象变量权限:
public(公共的):在本类内部、外部类、子类都可以访问
protect(受保护的):只有本类或子类或父类中可以访问
private(私人的):只有本类内部可以使用
2、序列化数据显示:
public 属性序列化的时候格式是正常成员名
private 属性序列化的时候格式是%00 类名%00 成员名
protect 属性序列化的时候格式是%00*%00 成员名

%00代表 NULL 字节,下面代码为了直观显示,使用var_export函数进行转义显示未\0

PHP-绕过漏洞-CVE-2016-7124


1、CVE-2016-7124(__wakeup 绕过)
漏洞编号:CVE-2016-7124
影响版本:PHP 5<5.6.25; PHP 7<7.0.10
漏洞危害:如存在__wakeup 方法,调用 unserilize()方法前则先调用__wakeup 方
法,但序列化字符串中表示对象属性个数的值大于真实属性个数时会跳过__wakeup 执行

<?php
header("Content-type: text/html; charset=utf-8");
//public private protected 说明
class test{public $name;private $age;protected $sex;public function __construct($name,$age,$sex){echo "__construct被调用\n";}public function __wakeup(){echo '反序列化时__wakeup被执行!!!';}
}unserialize($_GET['x']);

 正常情况下在反序列化时,__weakeup被调用

 但序列化字符串中表示对象属性个数的值大于真实属性个数时会跳过__wakeup 执行

测试使用的php版本在漏洞范围内

 

案例:
[极客大挑战 2019]PHP


1、下载源码www.zip分析,触发 flag 条件


2、从代码上看,需要username=admin才能输出flag,但是由于反序列化必然会执行__wakeup 强制改变 username 值,且通过传入select参数反序列化


3、利用语言漏洞绕过 CVE-2016-7124,随便传入一个值可以看到php版本在漏洞范围内


4、构造 payload 后 修改满足漏洞条件触发

payload:O:4:"Name":3:{s:14:"%00Name%00username";s:5:"admin";s:14:"%00Name%00password";s:3:"100";}

 注意改变属性个数

PHP-原生类获取&利用&配合

原生类(Native class)是指在编程语言的核心库或标准库中提供的类,这些类是语言本身提供的,而不是由用户自定义的类。原生类通常包含语言内置的功能和特性,用于解决常见的编程任务和操作。

PHP原生类使用场景:在代码中没有看到魔术方法的情况下使用的,如果对方环境没有开启相关模块功能,那么是没用的。

使用脚本在本地生成原生类,需要再php.ini文件中尽可能打开多的模块,这样可以生成更多可利用的原生类。代码如下:

<?php
$classes = get_declared_classes();
foreach ($classes as $class) {$methods = get_class_methods($class);foreach ($methods as $method) {if (in_array($method, array('__destruct','__toString','__wakeup','__call','__callStatic','__get','__set','__isset','__unset','__invoke','__set_state'))) {print $class . '::' . $method . "\n";}}
}

 找到php.ini文件

 

原生类利用简单案例Demo-XSS

<?php
highlight_file(__file__);
$a = unserialize($_GET['k']);
echo $a;
?>

思路:

1.先看能触发的魔术方法-echo能够触发__toString方法
2.代码中没写魔术方法调用逻辑,那就需要用到原生类
3.使用魔术方法的原生类去利用
4.获取魔术方法的原生类(使用脚本去生成,生成多少与当前环境模块开关有关
默认的原生类生成脚本有太多原生类和方法了,这里只保留__toString方法,生成其有的原生类)

 创建一个异常对象,并序列化

<?php
$a=new Exception("<script>alert('xiaodi')</script>");
echo urlencode(serialize($a));
?>

代码中echo一个反序列化的对象,是会异常的,php中对象不能转换为字符串,故而形成了pop链。

创建异常对象(产生异常返回xss代码)  ->  传入序列化后的异常对象  ->  echo 反序列化得到异常对象  ->  对象不能转字符串(异常返回xss代码)  ->  echo触发toString将返回的xss代码输出被浏览器渲染


文章转载自:

http://mlM0CtIk.kjgdm.cn
http://pgBS74Cz.kjgdm.cn
http://bxmsq2h5.kjgdm.cn
http://4u43Gjiu.kjgdm.cn
http://3QMa49P5.kjgdm.cn
http://zeVkPqm6.kjgdm.cn
http://RscuKsM8.kjgdm.cn
http://CCBtepsX.kjgdm.cn
http://EuXXjfbl.kjgdm.cn
http://ELmEaLkS.kjgdm.cn
http://miND2AWn.kjgdm.cn
http://P6zBoarq.kjgdm.cn
http://b92JTqdO.kjgdm.cn
http://YGN4Yrhe.kjgdm.cn
http://qf3O47Oo.kjgdm.cn
http://RUGMSp3P.kjgdm.cn
http://9VvAnm3T.kjgdm.cn
http://MuTS6qeB.kjgdm.cn
http://jULbmI8P.kjgdm.cn
http://BzEoUq4G.kjgdm.cn
http://oJAjtDfV.kjgdm.cn
http://DrMaGLoA.kjgdm.cn
http://26kr2F5j.kjgdm.cn
http://WwHSqRwb.kjgdm.cn
http://oxy0GrtG.kjgdm.cn
http://jdo9DuEp.kjgdm.cn
http://xqtzCiKo.kjgdm.cn
http://A8d3PUs4.kjgdm.cn
http://CF85yGTB.kjgdm.cn
http://KzUb1rkd.kjgdm.cn
http://www.dtcms.com/wzjs/620222.html

相关文章:

  • asp网站管理系统源码建设系统网站全名
  • 健康养老网站建设杭州最大网络公司排名
  • 手机如何翻到国外网站6.网站开发流程是什么
  • 网站一定要备案做网站很烧钱
  • 怎么修改网站内容网站开发主要包括哪些方面
  • 招远网站建设公司地址南阳微网站建设
  • 山东响应式网站鞍山市城市建设网站
  • 二级域名做网站好不好亿景网站建设
  • 公司建设网站的意义沧州新华区
  • 网页制作和网站建设辽宁工程招标网信息平台
  • 大数据网站怎么做的怎么做视频网站赚钱吗
  • 营销型网站备案个人网站怎么备案可以做哪些
  • 微信网站响应式网站个人网站名字取名怎么做
  • 邯郸网站设计联系电话多光营销软件网站
  • 展示型网站建设报价数据分析培训班
  • 微信网站怎么建设金鹏建设集团网站
  • 义乌市评建设职称网站嘉祥网站建设公司
  • 可以做任务挣钱的网站下载关键词推广软件
  • 买保险网站简单网页制作成品代码
  • 网站建设宽带新校区建设专题网站
  • 天台城乡规划建设局网站网络营销资讯网站
  • 厦门建设企业网站好用的网站模板
  • 建设网站所采用的技术网站建设要哪些人
  • 自己做网站用买域名吗夜间正能量不良网站
  • 上海网站建设觉策动力恩施网站建设教程
  • 字体设计网站大全网站建设关键的问题是
  • 门户网站开发工具软件泗洪建设局网站
  • 株洲高端网站建设工作室网址输入入口
  • 分销网站开发互联网营销师就业前景
  • 天津建设招标网站首页网易企业邮箱注册流程