zoukankan      html  css  js  c++  java
  • 9.29 接9.27PHP相关

    9.27PHP相关

    条件判断

    if(条件){条件成立时执行的代码;}

    if(条件){{条件成立时执行的代码;}}else{条件不成立时执行的代码;}

    if  elseif  elseif  else

    switch

    循环:

    for(初始值,条件,增量){}循环

    forecah()遍历数组

    while循环

    do while 循环

    数组:在单个变量中存储多种类型的值,类型:数字型数组、关联型数组(键值对数组)、多维数组

    $array=array(“1”,123,1.124,true)

    $array=array(“k1”=>value1,”k2”=>value2)

    $array=array(array(1,2,3),array(4,5,6),array(7,8,9))

    数字型数组的下标是从0开始的,长度使用count()函数计算,遍历数组使用for/foreach计算,

    关联型数组的下标是键,k1,k2,遍历数组使用for/foreach

    打印数组用print_r()

    数组的排序:

    sort()升序  

    rsort()降序  

    asort()针对关联型数组的值,升序  

    ksort()针对关联型数组的键,升序

    arsort()针对关联型数组的值,降序

    krsort()针对关联型数组的键,降序

    超(级)全局变量:

    $GLOBALS //包含全部变量的全局组合数组

    $_SERVER //包含请求头中的信息,用户的IP、用户UA、用户头信息等    

    $_REQUEST//包含用户提交的所有的数据(POST/GET/COOKIE等)

    $_POST //包含用户POST方式发过来的数据

    $_GET //包含用户GET方式发过来的数据

    $_FILES //包含用户发送过来的文件对应的数据

    $_ENV //包含服务端环境边量的数组

    $_COOKIE //包含COOKIE中的数据

    $_SESSION // 包含SESSION中的数据

    Cobalt Strike简单使用

     后渗透测试工具,基于java开发,适用于团队之间协同作战,简称“CS

    CS分为客户端和服务端,一般情况下我们称服务端为团队服务器,该工具具有社工(社会工程学攻击)功能,团队服务器可以帮助我们收集信息以及管理日记记录,linux中需要以root开启团队服务器,windows中 以管理员开启的团队服务器。

    Linuxteamserver server_ip pwd  (server_ip 为服务端ip)

    Windows: teamserver.exe 服务端IP(一般为当前机器ip) 密码  (基本同上)

    然后开启客户端:

    Linux./CobaltStrike 或者java -jar CobaltStrike.jar

    Windows:双击CobaltStrike.exe或者java -jar CobaltStrike.jar

    开启后输入IP、密码,进入CS客户端java -jar CobaltStrike.jar

     

    设置监听器:在菜单栏中找到”Cobalt Strike”-->listeners,点击add添加监听

     

    CS listener:(有许多种类)

    比如windows/beacon dns/reverse dns txt

    beacon是内置监听器,在目标主机中执行payload获得shellCS中,其种类有dns/http/https/smb等类型;

    foreign外部结合的监听器,一般和MSF联动,获取meterpreter(shell)MSF

    生成木马病毒

    菜单栏中 attacks-->packages-->多种生成种类病毒

     

    1HTML Application生成而已的HTA木马文件

    2MS Office Macro生成office宏病毒

    3Payload Generator生成各种语言版本的payload

    4USB/CD AutoPlay生成利用自动播放运行的木马文件

    5Windows Dropper捆绑器,能对文档进行捆绑

    6Windows Executable生成可执行exe木马

    7Windows Executable(s)生成无状态的可执行exe木马

    我们选择6,设置好监听器和生成的木马的类型,得到exe木马,复制到虚拟机中运行,然后再CS客户端就能获得控制住的机器。

    Cookiesession的比较:

    1、cookie是存放在用户的浏览器中,是服务端通返回包中set-cookie来设置,cookie表示用户的浏览器和服务器之间的会话状态,登录成功之后方可获取cookie数据,该数据一般情况下具有时效性,失效之后需要用户重新登录。有了cookie数据之后,用户的每次请求都会带上cookie,服务端会验证该cookie的合法性和实效性,cookie的发送需要遵循浏览器的同源策略。

    2、Session是存放在服务端的,表示用户和服务器之间的会话状态,sessioncookie是一一对应的关系,服务器也需要记住每个哪个用户登录该站点,一般情况下session是以文件的形式保存在/tmp/目录中,形式为:sess_XXXXX

    只要cookie被修改过,服务器就会要求用户重新登录

    有意思的常量(预定义常量 PHP

    __LINE__ 显示当前行号

    __FILE__ 当前文件的路径以及文件名

    __DIR__ 当前文件的路径

    __FUNCTION__ 当前定义的函数名

    __CLASS__ 当前类名

    PHP函数:有参、无参

    function FunctionName($value=’’) //函数名命名方法:驼峰命名法(组合词的每个单词的首字母大写)

    调用函数时,函数名(),注意如果需要给参数,则在()输入参数,个数要满足其要求

    需要在函数中有返回值,需要return

    PHP面向对象

    C面向过程;

    C++ C# java php python等是面向对象的。

    对象:对于某些事物的一只描述,代表整体上的一种概念,对现实世界的一种抽象,具有行为、形态、表示三种特性

    面相对象中常用的概念:

    类:对于某类事物的一种抽象,它包含事物的形态、行为等。

    对象:是类的实例,人类(亚洲人对象)、狗类(二哈)

    成员变量:对象的属性特征(二哈:外形像狼)

    成员函数:对象的某种行为(二哈:拆家)

    构造函数:

    主要用于创建对象时初始化对象,为成员变量赋初始值,也就意味着砸new对象时用到该函数,该函数需要定义在类中

    __construct(参数)

    析构:__destruct(参数)

    类的定义:

    class ClassName{ 定义类的变量和函数}

    创建对象:new对象,类的实例化,使用new

    调用成员方法: ->

    this表示当前的类,类中有变量和函数,要使用这些变量和函数,$this->变量名

    $this ->函数名

    继承:在PHP中可以使用extends继承一个类,不能继承多个(使用其他类中的变量和函数,这个类也叫做父类)

    A( 1 2 3)  class B extends A{  } AB的父类,B继承的AB可以使用A中的变量和函数。B也叫做子类。

    方法重写:覆盖,也就是说父类中方法不能满足自身的需要,重新定义方法

    访问控制:对定义的类中的变量和方法进行访问控制,通过public/protected/private实现

    Public: 公有的 在任何地方均可访问

    Protected:受保护的,只能在父类、子类以及自身中去使用

    Private:私有的,只能被其定义的类中访问

    接口:指定类中必须是要你管哪些方法,这些类不需要具体去定义,使用interface去定义接口。

    接口中只需要写清楚函数的名称以及参数即可,使用接口的时候需要使用关键词implements,注意:类中必须要实现所有的方法。类中可以实现多个接口

    服务器接收用户发过来的数据的方法:

    $_GET接收用户以GET方式发过来的数据

    $_POST接收用户以POST方式发过来的数据

    $_COOKIE接收用户的cookie

    $_REQUEST接受用户发过来的数据(GETPOST

    htmlspecialchars()实体化编码

    echo htmlspecialchars(“<script></script>”);//<script></script>gt;

    is_array()判断参数是否是数组,如果是,则返回true

    isset() 判断结果是否为空,如果是非空,则返回true

    date(“Y/m/d”)  当天日期Ymd

    简易WEB服务:IIS  apache  nginx  tomcat

    php -S ip:port

    python2  python -m SimpleHTTPServer 8080

  • 相关阅读:
    zabbix增加手机短信、邮件监控的注意要点,SSL邮件发送python脚本
    关于门诊保险你需要知道的事情(原创)
    儿童做家务年龄对照表,80%的父母都后悔看晚了…
    宁65年产权公寓值得投资吗?大数据帮你分析
    为什么百万医疗险越来越多,到底选哪款?
    python 爬虫 scrapy1_官网教程
    自然语言10_分类与标注
    自然语言9_NLTK计算中文高频词
    自然语言8_中文搜词
    自然语言7_NLTK中文语料库sinica_treebank
  • 原文地址:https://www.cnblogs.com/x98339/p/11606985.html
Copyright © 2011-2022 走看看