98.网络安全渗透测试 您所在的位置:网站首页 session_start 98.网络安全渗透测试

98.网络安全渗透测试

2024-06-02 03:09| 来源: 网络整理| 查看: 265

我认为,无论是学习安全还是从事安全的人,多多少少都有些许的情怀和使命感!!!

文章目录 一、session身份验证绕过漏洞与测试 1、session机制 2、session的生命周期 3、出现漏洞的情景 4、session身份验证绕过示例: (1)源码:`session.php` (2)绕过:`抓包改包` (3)总结:

一、session身份验证绕过漏洞与测试 1、session机制

        session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。 注意:session是存在于服务器里,而cookie是存在客户端。

        当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端的请求里是否已包含了一个session标识 - 称为session id,如果已包含一个session id则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用(如果检索不到,可能会新建一个)(其实就是在检索一个session文件,里面存储在内容)(这个session文件的命名格式为sess_sessionid号),如果客户端请求不包含session id,则为此客户端创建一个session并且生成一个与此session相关联的session id,session id的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串,这个session id将被在本次响应中返回给客户端保存。

        保存这个session id的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发挥给服务器。

        session一般用于登录验证。session的机制,是会在浏览器生成一个cookie session_id,也会在服务器里生产一个session id对应的session文件。比如,在做身份证认证的时候就会在这个服务器里的session id对应的文件写入要验证的内容。

        在php里 session的存放位置是 在php.ini里设置的,也可以通过函数设置在其他位置

2、session的生命周期

        默认关闭浏览器,session就会消失,当然了也可以在程序中设置session的过期时间

3、出现漏洞的情景

        如果服务器的session-id对应的文件存在网站的其他目录(比如/var/www/html/tmp目录下)(有时会存储在网站根目录下的某目录下),通过扫描目录即可获取 session 文件所在目录,我们即可获取到seesion_id,即可绕过身份验证。         如果存放在数据库,可以通注入漏洞获取seesion信息,获取到session_id 就可以修改cookie 进行提交,验证就可以通过。

4、session身份验证绕过示例: (1)源码:session.php

【默认帐号和密码:qwsn/123456】



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有