Web安全深度剖析(五)

前言

由于本文涉及的漏洞较多,所以均为简单介绍,详细了解请百度Google。

其他漏洞

CSRF

CSRF原理

CSRF的攻击建立在浏览器与web服务器的会话上
欺骗用户访问URL
在用户不知情的状况下,通过浏览器向目标网站发送cookie达到攻击者目的(转发微博等)
(CSRF在ctf中出现较少,知道原理即可)

逻辑漏洞

水平越权

获得同级人员权限,如修改个人信息(可以越权查看修改别人的信息)(南航也出现过这样的漏洞)

垂直越权

获得管理员权限等,如修改密码(通过改包把重置密码发至自己的邮箱)

支付逻辑漏洞

商品数量为负数,单价为0等

指定账户恶意攻击

通过登录次数限制系统来锁死目标账号

代码注入

定义

未将客户端提交的数据进行检查就让web服务器执行

例子

服务器代码

1
2
3
4
5
<?php
$command = $_GET['command'];
system($command);
?>
//payload 127.0.0.1/cmd.php?command=ls

XML注入

和xss类似
通过闭合标签注入相关内容

XPath注入

XPath是XML路径语言,为基于XML的树状结构。简单来说,XPath就是选取XML节点的一门语言。
类似于SQL注入

JSON注入

JSON是一种轻量级的数据交换格式,是XML的一大对手。
JSON漏洞一般会导致json数据解析失败。

HTTP Parameter Pollution

即HTTP参数污染,指在传参中传入多个同名参数,导致参数覆盖。
例:127.0.0.1/test.php?str=hello&str=world
服务器端得到的str值便是world,但不同语言处理这种情况的方式不同,有的是取前者,有的取后者。
HTTP参数污染一半用于绕过网站防火墙

URL跳转与钓鱼

URL跳转

客户端跳转

即URL重定向,发生时浏览器地址栏URL会有明显变化。
HTTP状态码为302

服务器端跳转

即URL转发,发生时浏览器地址栏不会有变化

钓鱼

即钓鱼式攻击,攻击者模仿相关网站,当用户访问时,截获用户信息。
腾讯,百度等大厂商会对URL进行检测来提醒用户此URL是否安全,以此来减少钓鱼次数。
而攻击者可利用URL跳转来绕过检测

WebServer远程部署

如果远程部署配置不当,攻击者就可以通过远程部署功能入侵服务器。
这不能算作漏洞,应该算配置性错误。

Tomcat

Tomcat是目前较为流行的Java Web应用服务器
安装tomcat后,管理员登录管理网站(localhost:8080)仅需要上传一个war格式的文件就可以发布到网站。
同理,攻击者也可以上传war文件部署jsp木马
其中tomcat会默认设置管理员账号为tomcat,密码为tomcat

JBoss

JBoss和Tomcat基本类似,但JBoss默认无需账号密码即可登录后台管理。

WebLogic

weblogic的默认监听端口是7001,在URL中输入“console”会自动跳转到管理界面
新版本weblogic的登录密码很严格,而老版本有很多弱口令:
用户名密码均为 Weblogic
用户名密码均为 system
用户名密码均为 portaladmin
用户名密码均为 guest