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 ...
随机推荐
- Python之路(第四十篇)进程池
一.进程池 进程池也是通过事先划分一块系统资源区域,这组资源区域在服务器启动时就已经创建和初始化,用户如果想创建新的进程,可以直接取得资源,从而避免了动态分配资源(这是很耗时的). 线程池内子进程的数 ...
- 我发现了Unity3D的2D Light Renderer, 随后就把它抄了过来
. 前几个月,偶然在群里看到有人讨论Unity3D光照,于是我又萌生了一个新的目标----把它抄过来! . 众所周知,3D渲染的整个流水线都跟光照密不可分,相关的技术更是数不甚数,而2D游戏的光照通常 ...
- Flask+WebSocket实现群聊与单聊功能
在开始我们的程序代码之前,先来了解一下相关的基础知识: 1.什么是websocket? (1)WebSocket是HTML5开始提供的一种在单个 TCP 连接上进行全双工通讯的协议.WebSocket ...
- 洛谷P2107 【小Z的AK计划】
#include<iostream> #include<queue> #include<algorithm> using namespace std; struct ...
- [考试反思]1106csp-s模拟测试103: 渺茫
7点之前上不了博客,用gedit写的.谅解一下. 看起来不是特别惨?但是被sdfz爆踩了...而且其实并不能说“不是特别惨”吧90分算个啥啊?还凑不出个T2的AC难易度评估错误,T2是最简单的没看出来 ...
- 深入理解C#第三版部分内容
最近,粗略的读了<深入理解C#(第三版)>这本技术书,书中介绍了C#不同版本之间的不同以及新的功能. 现在将部分摘录的内容贴在下面,以备查阅. C#语言特性: 1.C#2.0 C#2的主 ...
- js基础总结03 --操作数组
修改于 2019-11-10 1 length:长度 <script> var arr = [1,2,3,4,5,6,7,8]; console.log(arr.length);//arr ...
- abp(net core)+easyui+efcore实现仓储管理系统——EasyUI之货物管理八(二十六)
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...
- Project Euler 56: Powerful digit sum
一个古戈尔也就是\(10^{100}\)是一个天文数字,一后面跟着一百个零.\(100^{100}\)更是难以想像的大,一后面跟着两百个零.但是尽管这个数字很大,它们各位数字的和却只等于一.考虑两个自 ...
- Vim 便捷 | 自己的Vim
在.vimrc中安排自己的Vim set softtabstop=4 "将连续数量的空格视为一个制表符 set shiftwidth=4 "自动缩进所使用的空白数 set auto ...