虽千万人,吾往矣

渗透术语相关

渗透测试基本术语

脚本(asp、aspx、php、jsp):编写网站的语言

html(html、css、js):超文本标记语言,解释给浏览器的静态编程语言

HTTP/HTTPS协议:通讯标准,明文或密文

CMS(自主建站系统):网站内容管理系统,常见的比如Discuz、DedeCMS、74CMS等,针对CMS漏洞进行渗透测试

肉鸡、抓鸡:被控制的电脑称为肉鸡,控制过程叫抓鸡;

跳板:网络跳板,简单来说,就是为了隐藏自己的地址,让别人无法查找到自己的位置。

shell:取得对服务器某种程度上操作权限

webshell:以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境,可以控制网站服务器,包括上传下载文件、查看数据库、执行恶意命令

后门程序:用来持续控制对方机器的程序,方便下一次的访问。

源码打包、脱裤:源码打包和数据库脱裤就是在拿到服务器权限后,对网站源代码和数据库进行打包,让自己拥有足够的时间查看网站的数据库里面的数据,或者进行代码审计。

提权:提升权限,一般情况下拿到shell的用户权限可能比较低,这时候就要进行权限提升,方法有数据库提权,第三方软件,系统漏洞提权等。

黑帽子、白帽子、灰帽子

0day:一些没有公开发布补丁的漏洞,意味着很多网站对没有对这个漏洞进行修复工作

CTF(Capture The Flag):夺旗赛,参赛团队之间通过进行攻防对抗、程序分析等形式,率先从主办方给出的比赛环境中得到一串具有一定格式的字符串或其他内容,内容一般是flag{},并将其提交给主办方,从而夺得分数。

渗透测试:  是指渗透人员通过模拟恶意黑客的攻击方法,从内网、从外网等位置利用各种手段对某个特定网络进行测试,发现和挖掘系统中存在的漏洞或技术缺陷,然后输出渗透测试报告,并提交给客户。这样,客户便可以根据渗透人员提供的渗透测试报告,清晰知晓其网络系统中存在的安全隐患和问题。

1. 关于POC、 EXP 、payload 、Shellcode

POC:全称 ' Proof of Concept ',中文 ' 概念验证 ' ,常指一段漏洞证明的代码。

EXP:全称 ' Exploit ',中文 ' 利用 ',指利用系统漏洞进行攻击的动作。

Payload:中文 ' 有效载荷 ',指成功exploit之后,真正在目标系统执行的代码或指令。

Shellcode:简单翻译 ' shell代码 ',是Payload的一种,由于其建立正向/反向shell而得名。

2. 几点注意

POC是用来证明漏洞存在的,EXP是用来利用漏洞的,两者通常不是一类,或者说,PoC通常是无害的,Exp通常是有害的,有了POC,才有EXP。

Payload有很多种,它可以是Shellcode,也可以直接是一段系统命令。同一个Payload可以用于多个漏洞,但每个漏洞都有其自己的EXP,也就是说不存在通用的EXP

Shellcode也有很多种,包括正向的,反向的,甚至meterpreter。

Shellcode与Shellshcok不是一个,Shellshock特指14年发现的Shellshock漏洞。

3. Payload模块

在Metasploit Framework 6大模块中有一个Payload模块,在该模块下有Single、Stager、Stages这三种类型,Single是一个all-in-one的Payload,不依赖其他的文件,所以它的体积会比较大,Stager主要用于当目标计算机的内存有限时,可以先传输一个较小的Stager用于建立连接,Stages指利用Stager建立的连接下载后续的Payload。Stager和Stages都有多种类型,适用于不同场景。

4.    想象自己是一个特工,你的目标是监控一个重要的人,有一天你怀疑目标家里的窗子可能没有关,于是你上前推了推,结果推开了,这是一个POC。之后你回去了,开始准备第二天的渗透计划,第二天你通过同样的漏洞渗透进了它家,仔细查看了所有的重要文件,离开时还安装了一个隐蔽的窃听,这一天你所做的就是一个EXP,你在他家所做的就是不同的Payload,就把窃听当作Shellcode!

渗透测试全过程:

明确目标--> 信息收集 -->漏洞挖掘--> 漏洞利用--> 权限提升 -->内网渗透--> 痕迹清理(想完全清除痕迹是比较困难的,所以一般都以伪装为主,代理IP、虚拟机、跳板等方式)---> 撰写报告

明确目标

1)确定范围:测试的范围,如:IP、域名、内外网、整站或者部分模块

2)确定规则:能渗透到什么程度(发现漏洞为止或者继续利用漏洞)、时间限制、能否修改上传、能否提权

目标系统介绍、重点保护对象及特性。

是否允许数据破坏?是否允许阻断业务正常运行?

测试之前是否应当知会相关部门接口人? 接入方式?外网和内网?

3)确定需求:web应用的漏洞?业务逻辑漏洞?人员权限管理漏洞?

4)分析渗透测试过程中可能产生的风险,如大量测试数据的处理、影响正常业务开展、服务器发生异常的应急、数据备份和恢复、测试人力及物力等成本。

5)测试方书写实施方案并提交给客户或领导进行审核。在审核完成后,从客户或领导处获取对测试方进行书面委托授权书,授权测试方进行渗透测试。

权限提升

一般情况下,拿到的服务器权限比较低,不能进行写入操作,目录限制访问等

数据库提权 、操作系统提权、 内核漏洞提权、 第三方软件提权、 系统配置不当提权

撰写报告

概述(渗透测试范围、渗透测试主要内容)

脆弱性分析方法

渗透测试过程描述

分析结果与建议

如何进行安全加固

 

posted @ 2020-09-12 14:22  遥望星空脚踏实地  阅读(442)  评论(0编辑  收藏  举报