网络安全笔记第三篇

常见术语介绍

1.脚本(asp、php、jsp)

脚本就是一些编写网站的编写语言。

2. html(css、js、html)

标记语言,静态语言,解释型语言(用来编写静态页面)。

3. HTTP协议

进行浏览网页与通信的协议(通信标准)。HTTPS协议对数据进行了加密。

4. CMS(B/S)

网站的内容管理系统。

有织梦、wordpress等等。

博客类型用的内容管理系统

教育系统用的内容管理系统有织梦

5. MD5

6. 肉鸡、抓鸡、跳板

肉鸡就是已经被控制的电脑;

抓鸡就是利用工具搜索可以被用作肉鸡的计算机(存在漏洞,但是还没有被控制)

跳板是为防止在控制他人电脑时留下自己电脑的敏感信息(如IP地址),通过另一台已经被控制的电脑来控制/入侵他人的电脑。

7. 一句话、小马、大马

一句话木马:

小马:指的是上传恶意文件的程序/代码,比如一句话木马就是小马,一般用来上传功能比较全面的大马,又有小马拉大马之说。

webshell、提权、后门

webshell:一句话木马、小马、大马都属于webshell,也就是网站后门。

提权说的是一个提升权限的过程;

后门说的是在肉鸡上留下的一个入口,方便之后进行连接。

8. 源码打包、脱裤

源码打包指的是把网站的后台代码打包下来

脱裤指的是将网站上存储的敏感信息下载下来

9. 嗅探、rookit

嗅探是拦截指定的网络数据包,并进行分析,得到其中的系统信息。

rookit是隐藏的系统级后门

10 0day

未公布的漏洞,只有黑客自己知道。

OWASP TOP 10

统计全球排名前10的漏洞

什么是渗透测试(penetration test)?

渗透测试并没有一个标准的定义,国外一些安全的组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。

这个过程是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。

换句话说,渗透测试是指渗透人员在不同的位置(比如从内网、从外网等位置)利用各种手段对某个特定网络进行测试,以期发现和挖掘系统中的漏洞,然后输出渗透测试报告,并提交给网络所有者。

网络所有者根据渗透人员提供的渗透测试报告,可以清晰知晓系统中存在的安全隐患和问题。

渗透测试流程

  1. 明确目标
  2. 编写报告
  3. 信息收集(占渗透测试60%的时间,直接决定之后信息收集的好坏与深度)
    1. 网站的端口、IP、邮箱、dns收集、whois查询、WAF、工具网站、整站、子域、谷歌黑客、C段、旁站
  4. 信息整理
  5. 漏洞探测
    1. SQL注入
    2. XSS
    3. 文件上传
    4. bash
    5. 下载漏洞
    6. 文件包含
    7. 变量覆盖
    8. 代码执行
    9. 弱口令
    10. 文件泄露
  6. 获取所需
  7. 漏洞验证
    1. poc(漏洞验证)
      1. id = 27 and select version()
    2. exp(漏洞利用)
      1. id = 27 and select 1,2,admin,pass from admin(直接把数据库里面的信息显示出来)
  8. 信息分析

学习环境配置

  1. 虚拟机应用配置

    1. 网络连接的三种模式

      如何查看网络有没有开启对应的虚拟机服务

      Win+R打开“运行”窗口

      输入“services.msc”打开“服务管理”窗口

      1. 桥接模式:
      2. NAT模式:
      3. 主机模式(vnet1):可以分配一个IP地址,但是不能进行网络连接
  2. 测试系统的安装

  3. HTTP协议讲解

    1. 超文本传输协议(HTTP,Hyper Text Transer Protocol)
    2. 即超文本传输协议,是一种详细规定了浏览器和万维网服务器之间互相通信
    3. HTTP响应码
      1. 200:客户端请求成功,是最常见的状态;
      2. 302:重定向;
      3. 404:请求资源不存在,是最常见的状态;
      4. 400:客户端请求有语法错误,不能被服务器所理解;
      5. 401:请求未经授权;
      6. 403:服务器收到请求,但是拒绝提供服务
      7. 500:服务器内部错误,是最常见的状态
      8. 503:服务端不能处理客户端的请求,一段时间后可能回复正常
    4. HTTP URL
      1. 统一资源定位符(URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息)的格式如下:
        1. http://host['":"port] [abs_path]
        2. 例如
          1. http://www.cracer.com:80/admin/index.php
          2. 可以利用URL来区分服务器操作系统的类型:
            1. 比如:http://www.cracer.com:80/admin/index.phP (把最后面的字符“P”大写)
              1. 如果正常显示,说明服务器操作系统是windows,
              2. 如果不是正常显示,说明服务器操作系统是Linux。
          3. http头详解
            1. image-20210428211925175
            2. 200:响应码
            3. date:日期
            4. Content-type:类型
            5. Accept-charset:服务器可接受的字符串
            6. Content-length:表示请求消息正文的长度
            7. Cookie:这是最重要的请求头信息之一
            8. http://www.cracer.com/?post = 373
          4. http请求方法
            1. GET
            2. POST
            3. OPTIONS
            4. PUT
            5. MOVE
            6. DELETE
            7. TRACE
          5. 错误配置HTTP方法导致的安全事件
            1. 服务器存在允许PUT方式和MOVE方式,这时我们可以通过PUT方式传一个webshell.txt然后通过MOVE方式结合解析漏洞,这样就可以很快拿到网站的webshell
          6. http头中隐患
            1. 在PHP中通过会使用$_SERVER["HTTP_CLIENT_IP"]或者$_SERVER["HTTP_X_FORWARDED_FOR"]来获取IP
            2. 因此我们就可以通过修改http头中的X-FORWARD-FOR;CLIENT-IP;refere来进行攻击
            3. 例如:突破服务器限制访问ip
            4. http头注入攻击等
        3. HTTPS协议
          1. HTTPS其实是有两部分组成:HTTP+ssl/tls,也就是在HTTP上又加了一层处理加密信息的模块
          2. 服务器端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密的数据。
  4. 网站搭建配置

    如何把虚拟机中建立的网站发布出去(外网可以访问)?

posted @ 2021-04-28 22:35  Profs  阅读(257)  评论(0)    收藏  举报