2019-10-8:渗透测试,基础学习,php基础,会话,文件包含,笔记
php面向对象基础
->调用符号
构造函数construct,主要用来创建对象时初始化对象,为成员变量赋初始值,总与new运算符一起使用在创建对象的语句中
析构函数destructor,与构造函数相反,当对象结束其生命周期时,系统自动执行析构函数,__destruct
继承,php使用关键字extends来继承一个类,php不支持多继承,class child extends parent{代码}
属性的访问控制,php对属性或方法的访问控制,是通过在前面添加关键字public公有,protected受保护,或private私有来实现
public公有,公有的类成员可以在任何地方被访问
protected受保护,受保护的类成员可以被其自身以及其子类和父类访问
private私有,私有的类成员只能被其定义所在的类访问
接口:可以指定某个类必需实现哪些方法,但不需要定义这些方法的具体内容,interface定义接口,要使用接口用implements,类必需实现接口中定义的所有方法,否则会报错,类可以实现多个接口,用逗号来隔开
php表单
html form 表单action表示提交到哪个页面,method表示使用什么提交方式
服务器接收用户发来的表单数据的方式:$_GET get,$_POST post,$_COOKIE cookie,$_REQUEST 用户发来的数据,可以是get和post
htmlspecialchars实体化编码
php文件包含
在php中,通过一些文件包含的函数将本地或远程服务器中文件包含解析到当前php中,达到读取文件,代码利用,函数调用的目的
include “文件名”==include("文件名")
include_once
去包含文件的时候,include_once包含一次即可,当找不到包含文件时候,会警告,后续代码依然会执行
require
require_once
包含文件时候,require_once,需要包含一次即可,当找不到包含的文件时候,会直接报错,后续代码不执行
包含过来的文件的文件中,只要文件中代码是标准格式的php代码就会被解析
copy good.png/b+shell.php/a bad.png,
good.png是正常图片,
/b表示bit流,
shell.php是木马文件或含有php代码的文件,
/a表示acscii文件,
bad.png表示生成的图片木马,后缀名不做要求,主要是ascii文件就行
会话管理
会话,服务器和用户之间传输数据的方式或途径,在通道传输数据之前需要建立通道,这个通道可以理解为会话,在客户端通过cookie来管理会话,在服务器通过session来管理会话
cookie的管理,首先需要服务器给用户分发cookie数据,setcookie(name,value,表达式,路径,域范围)后三者可以不写,其中表达式主要用来设置cookie的时效性,setcookie需要写在html代码之前
服务器获取cookie:$_COOKIE["cookie_name"],需要使用当前打开的浏览器去访问,不能换其他浏览器
服务器删除 setcookie("cookie_name","",time()-3600)// 设置 cookie 过期时间为过去 1 小时
session管理,session变量用于存储关于会话的信息,或者更改用户会话的设置,session变量存储单一用户的信息,并对于应用程序中所有页面都可用
session,工作机制,为用户创建唯一的uid,在该uid的基础上存储变量,uid放在cookie或他通过url去传输,放在url中不安全
在html代码之前,通过session_start()函数来开启session,开启之后可以通过session数组存储某些变量
销毁session,可以使用unset()或session_destroy()函数来删除,需要session_start()结合使用,session_destroy()会清楚所有的session,谨慎使用
2019-10-8:渗透测试,基础学习,php基础,会话,文件包含,笔记的更多相关文章
- 零基础到精通Web渗透测试的学习路线
小编相信很多新手都会遇到以下几个问题 1.零基础想学渗透怎么入手? 2.学习web渗透需要从哪里开始? 这让很多同学都处于迷茫状态而迟迟不下手,小编就在此贴给大家说一下web渗透的学习路线,希望对大家 ...
- 渗透测试(PenTest)基础指南
什么是渗透测试? 渗透测试(Penetration Test,简称为 PenTest),是指通过尝试利用漏洞攻击来评估IT基础设施的安全性.这些漏洞可能存在于操作系统.服务和应用程序的缺陷.不当配置或 ...
- 2019-9-19:渗透测试,基础学习,html常用标签,笔记
HTML常用标签<br>:换行<meta charset="utf-8">:编码标签<script type="路径">:插 ...
- 2019-10-11:渗透测试,基础学习,php+mysql连接,笔记
mysql导出数据1,通过工具如phpmyadmin,navicat等2,mysqldump -u -p 库名 > /数据库文件, mysqldump -u -p 库名 表名 > /表数据 ...
- 2019-9-24:渗透测试,JavaScript数据类型基础学习
JavaScript 数据类型 值类型(基本类型):字符串(String).数字(Number).布尔(Boolean).对空(Null).未定义(Undefined).Symbol. 引用数据类型: ...
- 2. 移动安全渗透测试-(Android安全基础)
2.1 Android系统架构 1.应用程序层 平时所见的一些java为主编写的App 2.应用程序框架层 应用框架层为应用开发者提供了用以访问核心功能的API框架 android.app:提供高层的 ...
- 4. 移动安全渗透测试-(Android逆向基础)
4.1 smali 基础 1.注释 smali中使用#来代表注释一行例如:# const-string v0, "aaa" #这句不会被执行 2.数据类型 V void,只能用于返 ...
- java基础学习总结——基础语法2
一.语句
- JAVA基础学习day23--GUI基础
一.GUI概述 1.1.GUI概述 Graphical User Interface(图形用户接口) 用图形的方式,来显示计算机操作的界面, CLI: Command line User Interf ...
随机推荐
- MySQL GROUP_CONCAT()函数 -- 字段合并查询
在做查询的时候遇到一个问题,今天分享一下解决方法. 先看一下我想要什么效果. 清单名称类型要点,后面两列为清单步骤(外键表) 但我并不想让主表的内容重复那么多遍,于是 distinct去重.子查询.左 ...
- python3.8安装flask出现错误“ModuleNotFoundError: No module named '_ctypes'”
本想在CentOS下配置flask+nginx+uwsgi环境,结果安装最基础的flask包都出了问题...以下是我的环境: 服务器:阿里云ECS CentOS7 python版本:3.8.0 问题描 ...
- JVM概述和类加载器
JVM概述 1.Java虚拟机所管理的内存包括以下几个运行时数据区域: ①.程序计数器 程序计数器是一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器,字节码解释器工作时就是 ...
- day3------基本数据类型int, bool, str,list,tuple,dict
基本数据类型(int, bool, str,list,tuple,dict) 一.python基本数据类型 1. int 整数. 主要用来进行数学运算 2. str 字符串, 可以保存少量数据并进 ...
- 持久层框架JPA与Mybatis该如何选型
一.现状描述 目前java 持久层ORM框架应用最广泛的就是JPA和Mybatis.JPA只是一个ORM框架的规范, 对该规范的实现比较完整就是Spring Data JPA(底层基于Hibernat ...
- 关于高淇JAVA中SORM总结学习笔记详细个人解释
代码来源于高淇JAVA教学视频 谢谢高淇老师的教学. 因为自己在学习的过程中发现了很多困难点,总结下希望对自己接下来学框架提升.给像我一样得初学者方便. SORM框架是一个简单的ORM,关系对象映射, ...
- JavaScript数据在内存中储存方式
详情来源于个本人博客: https://shengchangwei.github.io/al-data/ > Js的数据类型包括两种: 基本数据类型:String.Boolean.Number. ...
- CentOS 7升级Python到3.6.6后yum出错问题解决总结
最近将一台测试服务器操作系统升级到了Cent0S 7.5,然后顺便也将Python从2.7.5升级到Python 3.6.6,升级完成后,发现yum安装相关包时出现异常,报"File & ...
- CSPS模拟 48
??? 分数越来越低??? T1 String Master 题目过于毒瘤,以至于我都不想改 T2 Tourist Attractions 稍微转化题意是求无向图的三角形个数 由于坚信bitset不是 ...
- vim编辑器介绍
所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器. vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正 ...