不常用的访问控制方式——http auth

    今天遇到一个http auth方式的访问控制,访问页面时出现输入用户名与密码的验证:

不常用的访问控制方式——http auth_第1张图片

    使用ncrack爆破登陆后,当想要爆破目录时,必须每次请求都带着authorication头,使用dirb -H '头爆破'

 

不常用的访问控制方式——http auth_第2张图片

    Authorication头形如:Authorization: Basic YWRtaW46YWRtaW4= ,Authorization: "Basic 用户名和密码的base64加密字符串" 

    http auth的过程如下:

客户端发送http请求服务器发现配置了http auth,于是检查request里面有没有"Authorization"的http header
如果有,则判断Authorization里面的内容是否在用户列表里面,Authorization header的典型数据为"Authorization: Basic HY0=",其中Basic表示基础认证,HY0=是base64编码的"user:passwd"字符串。如果没有,或者用户密码不对,则返回http code 401页面给客户端。浏览器在收到401页面之后,弹出一个对话框让用户输入帐号密码;并在用户点确认的时候再次发出请求并带上Authorization header

    一次实际访问过程是如下:

  • 第一次发送http无Authorication头的请求
  • 服务器端返回401页面
  • 前端弹出认证对话框
  • 用户输入帐号密码,并点确认
  • 发出带着Authorization的request
  • 服务器端认证通过,并返回页面

注:使用http auth时不会用cookie,http auth现在用的并不多。不过在路由器等场合还是有所应用的,因为http auth最简单,使用起来几乎是零成本。在做访问控制,不想使用SSO、数据库之类的东西的时候,http auth为一个简洁的选项。

WVS也有一个modle爆破auth,后续添加进去。

你可能感兴趣的:(web安全)