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 ...
随机推荐
- Dubbo配置完全外部化实践,使用动态配置中心的注意事项
问题描述 近期开发项目,将Dubbo的配置全部外部化到动态配置中心.这里配置中心我使用的是Apollo. @Configuration public class DubboConfig { @Bean ...
- Spark集群安装与配置
一.Scala安装 1.https://www.scala-lang.org/download/2.11.12.html下载并复制到/home/jun下解压 [jun@master ~]$ cd sc ...
- Java基础(十一)回调(callback)与对象克隆(Cloneable)
一.回调 1.回调是一种常见的程序设计模式,可以指出某个特定时间发生时应该采取的动作. 在java.swing包中有一个类Timer类,可以使用它在到达指定的时间间隔作出什么动作.那么就有两个问题,即 ...
- UI控件拖动失效
问题描述:ui Slider滑块点击时需要特效,直接在滑块上添加OnPointerDown事件与OnPointerUp事件,但是当拖动时会直接触发OnPointerUp事件,而且拖动相关的事件失效 原 ...
- 致Java星球程序员兄弟们的一封信
致Java星球程序员兄弟们的一封信 亲爱的Java星球的程序员兄弟们: 你们好!我是来自地球的一名Java程序员,首先我代表地球人对贵星球的高司令来到地球传授Java语言,造福了全人类,造福了整个地球 ...
- 运营的Python指南 - Python 操作Excel
这是一份写给运营人员的Python指南.本文主要讲述如何使用Python操作Excel.完成Excel的创建,查询和修改操作. 相关代码请参考 https://github.com/RustFishe ...
- Java 干货之深入理解Java内部类
可以将一个类定义在另一个类或方法中,这样的类叫做内部类 --<Thinking in Java> 说起内部类,大家并不陌生,并且会经常在实例化容器的时候使用到它.但是内部类的具体细节语法, ...
- 【XSY2558】圆上的蚂蚁 Ants on circle
Description L个点围成一个圆. 我们选定任意一个点作为原点, 则每个点的坐标为从原点顺时针走到这个点的距离. 圆上有N只蚂蚁, 分别被编号为1到N. 开始时, 第ii只蚂蚁在坐标为Xi的点 ...
- 分手是祝愿:dp
Description Zeit und Raum trennen dich und mich. 时空将你我分开. B 君在玩一个游戏,这个游戏n个灯和n个开关组成,给定这n个灯的初始状态,下标为从1 ...
- CSPS模拟 74
T1 贪心,如果用set考虑一下multi. T2 难道是我的疑问都太过sb? 从来没人愿意认真思考一下我的问题. 更好,思考量这东西本该我自己来补. 设$dp[i][j]$为i个点的森林,j个点在特 ...