2019-9-29,php基础学习,笔记
cobalt strike简单使用
cobalt是一个后渗透测试工具,基于java开发,适用于团队间协同作战,简称"cs"
cs分为客户端和服务端,一般情况下我们称服务端为团队服务器,该工具具有社会工程学攻击的方法和手段,团队服务器可以帮助我们收集信息和保存日志记录,linux中需要以root开启团队服务器,windows以管理员开启团队服务器
服务端开启
linux:./teamserver server_ip pwd
windows: teamservers.exe
客户端开启
linux:./cobaltstrike 或 java -jar -XX:+AggressiveHeap -XX:+UseParallelGC -jar cobaltstrike.jar
windows:双击cobaltstrike.exe
点开之后输入好ip地址和设置的密码
1,设置监听器:
beacon是内置监听器,在目标主机中执行payload获得的shell到cs中,其类型有dns/http/https/smb等
foreign外部结合的监听器,一般和msf联动,获取meterpreter(shell)到msf中
在菜单栏找到cobalt strike找到listeners点击,之后点击add,编辑好ip端口,点击确定
2,生成木马病毒
html application,生成恶意的HTA,html应用程序
ms office macro ,生成office宏病毒
payload generator ,生成各种语言的Pyload
usb/cd autopaly,生成自动播放运行的木马
windows dropper,捆绑器,能对文档类型进行捆绑
windows executable,生成windows可执行程序
windows executabls(s),生成隐藏的windows可执行程序
在菜单栏中找到attacks,找到packages,选择windows executable,选择要生成的类型,点击generate,将生成一个木马程序,将程序复制到目标机器,运行,就会在cs客户端中看到控制住的机器
php条件判断
if(条件){条件城里时执行的代码}
if(){}else{}
if(){} elseif(){} else{}
switch 语句用于根据多个不同条件执行不同动作。
php循环
for(初始值,条件,增量){执行代码}循环
foreach 循环用于遍历数组
foreach ($array as $value){要执行代码;}
while (条件){要执行的代码;}
do...while 语句会至少执行一次代码,然后检查条件,只要条件成立,就会重复进行循环。
do{要执行的代码;}while (条件);
php数组,数组能够在单个变量中存储多个值,conut()函数计算数组的长度
数字型数组的小标是从0开始的,遍历数组用for,foreach
数值型数组,$数组名=array("1",123,1.3,true);
关联型数组的下标是键,k1,k2,遍历一样使用for,foreach
关联型数组(键值对),$数组名=array("k1"=>value1,"k2"=>value2)
多维数组
$数组名=array(array("ss",111,222),array("qq",11,22));
php数组排序
sort(),升序
rsort(),降序
asort(),根据关联数组的值,对数组进行升序排序
ksort(),根据关联数组的键,对数组进行升序排序
arsort(),根据关联数组的值,对数组进行降序排序
krsort(),根据关联数组的键,对数组进行降序排序
PHP 超级全局变量,都是数组
PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用。 你不需要特别说明,就可以在函数及类中使用。
$GLOBALS,包含了全局变量的全局组合数组,变量名就是数组的键
$_SERVER,包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等信息的数组,这个数组中的项目由web服务器创建,不能保证没个服务器都提供全部项目
$_REQUEST,包含用户提交的所有的数据,POST和GET的数据,包括cookie
$_POST,包含用户POST方式发来的数据
$_GET,包含用户GET方式发来的数据
$_FILES,包含用户发送来的文件对应的数据
$_ENV,包含了服务端环境变量的数组
$_COOKIE,包含cookie中的数据
$_SESSION,包含了session中的数据
cookie和session的比较
cookie是存放在用户的浏览器中,是服务端通过返回包中的set-cookie来设置,cookie表示用户的浏览器和服务器之间的会话状态,登陆成功之后方可获取cookie数据,该数据一般情况具有时效性,失效之后需要用户重新登陆,有了cookie数据,用户的每次请求都会带上cookie,服务端会验证该cookie的合法性和时效性,cookie的发送需要遵循浏览器的同源策略
session是存放在服务端,表示用户和服务器时间的会话状态,session和cookie是一一对应的,服务器也需要记住哪个用户登陆了该站点,一般情况下session以文件形式,保存在tmp文件中,文件以sess_xxx保存,xx为nti6开头,此刻给浏览器分配的cookie是nti6开头的那值,只要该cookie的值被修改过,那么服务器就会要求用户重新登陆
php预定义常量
__LINE__,文件中所在的行号
__FILE__,文件的完整路径和文件名
__DIR__,文件所在目录
__FUNCTION__,函数名称
__CLASS__,类的名称
php函数,有参函数,无参函数
函数需要有返回值,return
function 函数名($value='') 函数名的首字母最好大写
调用函数,函数名(),主要如果需要给参数,则需要在括号中输入参数,参数个数要满足其要求
php面向对象
面向对象的程序设计中,对象是一个由信息及对信息进行处理的描述所组成的整体,是对现实世界的抽象
对象的主要三个特征
对象的行为,可以对对象施加哪些操作,如开灯,关灯等就是行为
对象的形态,当施加那些方法时对象如何响应,颜色,尺寸,外形
对象的表示,对象的表示就相当于身份证,就具体区分在相同的行为与状态下有什么不同
面向对象常用的内容
类,定义了一件事物的抽象特点,类定义了包含了数据的形式以及对数据的操作
对象,是类的实例
成员变量,定义类内部的变量,是对象的特征,该变量即可称为对象的属性
成员函数,对象的某种行为,可用于访问对象的数据
构造函数,主要用来在创建对象时初始化对象,即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中
析构函数,析构函数与构造函数相反,当对象结束其生命周期时,例如对象所在的函数已调用完毕,系统自动执行析构函数,析构函数用来清理善后的工作
类的定义,
class 类名{var $x ; var $xx}
this表示当前类,类中有变量和函数
2019-9-29,php基础学习,笔记的更多相关文章
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- 【C#编程基础学习笔记】4---Convert类型转换
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...
- 【C#编程基础学习笔记】6---变量的命名
2013/7/24 技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...
- 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
技术qq交流群:JavaDream:251572072 教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- Java基础学习笔记(一)
Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...
- C#RabbitMQ基础学习笔记
RabbitMQ基础学习笔记(C#代码示例) 一.定义: MQ是MessageQueue,消息队列的简称(是流行的开源消息队列系统,利用erlang语言开发).MQ是一种应用程序对应用程序的通信方法. ...
- handlebars.js基础学习笔记
最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...
随机推荐
- ajax跨域简单请求与复杂请求
开发网站时经常会用到跨域资源共享(简称cors,后面使用简称)来解决跨域问题,但是在使用cors的时候,http请求会被划分为两类,简单请求和复杂请求,而这两种请求的区别主要在于是否会触发cors预检 ...
- .net core跨平台应用研究-ubuntu core下配置.net core运行时
引言 年初研究了一阵子.net core跨平台应用,先后发表了几篇应用研究的文章.因工作原因,忙于项目上线,有一阵子没来博客园写文章了.最近项目基本收尾,抽空翻了下自己的博客,廖廖几篇文章,真让人汗颜 ...
- ZTUnity Profiler概述及Profiler window 说明
转贴链接:https://www.jianshu.com/p/ca2ee8a51754
- ApplicationContextAware使用理解
接口的作用 当一个类实现了这个接口(ApplicationContextAware)之后,Aware接口的Bean在被初始之后,可以取得一些相对应的资源,这个类可以直接获取spring 配置文件中 所 ...
- GCC常用参数详解
转载:http://www.cnblogs.com/zhangsir6/articles/2956798.html 简介gcc and g++现在是gnu中最主要和最流行的c & c++编译器 ...
- incompatible implicit declaration of built-in function 'fabs'
形如: float a = -3.0; float b = fabs(a); 形参数据类型和实参数据类型完全一致,却还报警告: incompatible implicit declaration of ...
- C和C++引用传递和数组传参引用
引用传递有两种传参方式,具体可参考文章 概括地讲,就是 *声明一个形参是指针,所以需要传递指针实参,对应的函数实现也应当遵循指针的语法.这种实现思路并不针对于C或者C++,因为它们都有指针,所以都可以 ...
- 好看的原生UI
我前端可以说是0基础,作显示页面的时候自己设置各种CSS一是麻烦,二是难看,所以找UI组件, 比较流行的组件如ELEMENT之类都需要安装或者依赖其他框架如VUE,为了省事,决定使用原生UI组件, 本 ...
- Apache Tomcat服务部署网站
Tomcat是Apache软件基金会 (Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由于有了S ...
- 水管局长数据加强版:lct,时光倒流,最小生成树,边化点
Description: SC省MY市有着庞大的地下水管网络,嘟嘟是MY市的水管局长(就是管水管的啦),嘟嘟作为水管局长的工作就是:每天供水公司可能要将一定量的水从x处送往y处,嘟嘟需要为供水公司找到 ...