渗透测试基本概念

举报
黄生 发表于 2023/10/15 16:10:46 2023/10/15
【摘要】 渗透测试执行标准(Penetration Testing Execution Standard PTES)所定义的渗透测试过程环节WEB渗透的常用术语1.WebShell以ASP、PHP、JSP或CGI等网页文件形式存在的一种命令执行环境,可通过它对目标服务器进行一些操作,如文件管理、上传下载、链接数据库、执行命令等。2. 弱口令容易被猜测到或被破解工具破解的口令均称为弱口令,通常是简单数字...

渗透测试执行标准(Penetration Testing Execution Standard PTES)所定义的渗透测试过程环节

image.png

WEB渗透的常用术语
1.WebShell
以ASP、PHP、JSP或CGI等网页文件形式存在的一种命令执行环境,可通过它对目标服务器进行一些操作,如文件管理、上传下载、链接数据库、执行命令等。
2. 弱口令
容易被猜测到或被破解工具破解的口令均称为弱口令,通常是简单数字和字母的组合,如 123456 admin等。
3.SQL注入
在输入的字符串中注入SQL语句,设计不当的程序忽略了对SQL语句的检查,这些语句会被数据库误认为是正常的SQL指令而被执行。
4.注入点
注入点是可以进行注入的漏洞链接,通过在此链接输入恶意语句,可对Web应用程序进行攻击。
5.XSS(Cross Site Scripting,跨站脚本)
代码注入的一种。它允许恶意用户将代码注入网页,其他用户在查看网页时会受到影响。
6.命令执行
由于Web系统对用户输入检查过滤不严,因此攻击者可以在输入的字符串中添加恶意语句,从而执行系统命令。
7.C段嗅探
每个IP由ABCD四段数字组成。192.168.0.1,A段是192,B段是168,C段是0,D段是1,而C段嗅探就是窃听同一C段中的一台服务器,也就是D段1~255中的一台服务器。

信息收集可以用站长工具,比如whois查询

常见的漏洞分析:
XSS攻击 寻找是否有留言板,或是其他能够输入数据且管理员能够看见的地方。如果存在,可以先查看留言、用户名等自己能够控制输入的地方,测试能否进行XSS攻击。
文件包含
在网站中如果发现存在形如include.php?file=/web/file.php的URL,可以测试是否存在文件包含漏洞。
数据库备份下载
通过目录扫描工具扫描网站目录,可能找到网站的数据库或备份文件,一般下载后就可以发现管理员账户、密码等信息。但大量的扫描很容引起管理员的注意,不建议一开始就使用。

与数据库进行交互,如果未对用户可控的键值进行安全过滤,就带入数据库运行,那么极有可能产生SQL注入。自SQL数据库应用于Web应用时,SQL注入就已经存在了,是影响互联网企业运营并且最具有破坏性的漏洞之一,它会泄露应用程序数据库中的敏感数据,比如私人信息。

SQL注入流行起来之前,溢出往往是最有效的渗透方法。但是及时安装补丁之后,溢出程序便没有了用武之地。web应用程序一般开发周期比较短,很多网站会利用用户输入的参数动态形成SQL查询。攻击者在URL、表单,或者HTTP请求头部输入恶意的SQL命令,不受限制地访问目标站点的数据。

1998年12月, “NT Web Technology Vulnerabilities” ,首次提到SQL注入。

假设目标网站有URL为http://abc/showdetal.asp?id=49,那么分别在URL后面添加 and 1=1或 and 1=2,
如果这个站点存在注入的话,那么加上and 1=1,这个页面会返回正常,而and 1=2会返回错误,由此可以判断这是一个注入点。

可以使用Kali里的SQLmap来检测

在XSS还没有过滤的时候,评论区域等类似地方可以说是存在相当多XSS漏洞,一段小小的代码就能够实现各种功能。那个时候钓鱼攻击、盗取用户令牌等攻击方式层出不穷。现如今,XSS同样被OWASP定为TOP10漏洞之一,可见其影响之大。
信息安全的基本准则是不要完全接受用户输入的数据,而XSS漏洞的产生则违背了这一准则。一般来说,XSS分为两大类别:存储型XSS漏洞、反射型XSS漏洞。存储型XSS漏洞的特点是攻击相对持久化。

常见的反射型XSS漏洞的URL如下。http://www/reflectedxss.jsp?param=va1ue+XSS代码
这是反射型XSS漏洞的一种用法。这种构造的URL型的XSS漏洞需要用户点击才能触发,所以不具有持久性。它需要通过邮件或聊天工具发给用户,诱导用户访问。

URL(http://www/reflectedxss.jsp?param=value),在无法得知其是否具有XSS漏洞时,可以先在其后面加上经典的XSS测试语句:<script>alert("XSS")</script>。若发现页面上弹出一个消息为"XSS"的弹框,则证明这里存在XSS漏洞。之后就可以构造自己想利用的XSS代码。

XSS可以做的坏事有
窃取Cookie从而获取用户令牌,登录别人的账号。
注入恶意软件。通过你不小心点击的一个广告链接,让浏览器不停的弹出各种链接,主动访问注入了恶意软件的页面,给你的电脑注入恶意软件。
引导用户进入钓鱼页面。比如点击某个感兴趣的话题时,提示再次输入用户密码,实际已经载入到了钓鱼页面。

防御方法
HttpOnly最早由微软提出,至今已经成为一个标准。浏览器将禁止页面的JavaScript访问带有HttpOnly属性的Cookie。只要设置了HttpOnly,网站的Cookie就不会被XSS漏洞所加载的JavaScript的脚本获取到。

检查输入是否包含一些特殊字符如< > ’ " script等,对特殊字符过滤或者编码。
DVWA Dema Vulnerable Web Application是一款很好的渗透测试演练环境

遍历目录漏洞有很多不同的叫法,如信息泄露漏洞、非授权文件包含漏洞等,其成因是相同的,即程序没有对用户的输入进行过滤,如… /之类的目录跳转符,导致用户可以通过提交恶意目录跳转代码来遍历服务器上的任意文件。
配合网站的文件下载接口、或者文件包含接口来利用,可以和上传漏洞结合利用。

解析漏洞:服务器应用程序在解析某些假冒的后缀文件时,会将其解析成网页脚本,从而导致网站的沦陷。大部分都是由应用程序本身的漏洞导致的。具有代表性的便是IIS6.0解析漏洞,又有目录解析和文件解析两种利用方式,但也有少部分是由于配置疏忽所产生的,如Nginx<8.03的畸形解析漏洞。
利用这样开始:首先找到由IIS6.0组建的一个网站,并发现一个上传点;然后上传一张完整的图片,检验该上传点是否完好…

修复这种也很简单,就是及时更新安全补丁、关闭不必要的服务。

一般情况下只要可以注册为普通用户,就能找到上传头像或附件之类的界面,这些功能就是比较好的突破口,只要有办法绕过上传验证,并找到一句话木马上传成功后的Web路径就可以成功地对站点进行入侵。
上传漏洞:对用户文件上传部分的控制缺陷,导致用户可以越过其本身权限向服务器上传可执行的动态脚本文件,并通过此脚本文件获得执行服务器端命令的能力。关键是文件上传之后服务器端的处理、解释文件的过程是否安全。

在IIS5.x和6.0版本中存在以下两个解析漏洞。
目录解析漏洞。在网站中建立名字为*.asp、*.asa的文件夹,其目录内的任何扩展名的文件都被IIS当作ASP文件来解析并执行。例如创建目录test.asp,那么/test.asp/l.jpg将被当作ASP文件来执行,假如黑客可以控制网站的上传文件夹路径,就不需要考虑上传之后的文件名及文件后缀名。

网站上传图片的时候,如果将网页木马文件的名字改成"*.asp;.jpg”,就可以绕过服务器禁止上传ASP文件的限制,这样的畸形文件也同样会被当作ASP文件来解析并执行。

Apache的解析方式中有一个原则,按照识别"."后的扩展名来解析,如果碰到无法识别的扩展名时就会采用从后往前解析的方式,直到碰到可以解析的文件扩展名。如果解析完还没有碰到可以解析的扩展名,就会暴露源文件。
有些程序员会限制网站上传,如判断文件是否是PHP、ASP、ASPX、ASA、CER、JSP等脚本扩展名,如果是就会禁止上传,这个时候攻击者就可能通过上传XX.Php.rar等类型扩展名来绕过Web程序的检测机制,这样可以达到获取WebShell的目的。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。