渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享

2024-07-30 208 0

前言

在信息安全领域,SQL注入和跨站脚本攻击(XSS)是常见的攻击手段,对许多应用程序构成了严重的威胁。本文将详细探讨这些攻击的原理和检测方法,并通过实际代码案例,说明如何通过漏洞挖掘工具、手工测试和Fuzz技术,发现并验证这些安全漏洞。

首先,我们将通过一个具体的SQL注入示例,展示攻击者如何通过构造特定的输入来操控数据库查询,从而获得不正当的信息访问权。其次,我们会深入分析时间盲注的攻击手法,并介绍如何利用数据库响应时间来判断注入语句的执行结果。接着,通过实际代码分析,我们将解释这些漏洞在代码实现中的成因,并提出相应的防护措施。

在接下来的部分中,我们将探讨反射型XSS漏洞,并通过具体的实例展示如何进行有效的XSS漏洞测试。我们还会讨论现代浏览器的内置安全机制以及应用程序层的安全措施,帮助读者更全面地理解和防御XSS攻击。

通过本文的学习,读者将了解SQL注入和XSS攻击的基本原理和检测方法,掌握使用工具和手工测试相结合的漏洞挖掘技巧,提升自身在信息安全领域的专业水平。

SQL注入

EMM这个SQL漏洞Seay审计工具没审计出来,可能是工具代码规则需要更新一下,进入正题,在前期的第一篇文章内容,有介绍过相关SQL注入判断方式,在POST请求体发现一些有关ID或者User等参数的,都可以去挖掘,漏掉了就可能错过了。

patient_id=5'and'1'='1: 这段代码构建了一个始终为真的条件,服务器成功地执行了查询,并返回了正常的结果。这表明服务器没有识别出恶意代码并阻止执行。

渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享插图

patient_id=5'and'1'='2: 这段代码构建了一个始终为假的条件,服务器没有返回正常结果,而是返回了一个错误信息。这表明服务器可能对查询进行了检查,但它只检测了错误的条件。

渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享插图1

时间盲注

时间型盲注是一种 SQL 注入攻击技术,它利用数据库的响应时间来判断注入语句的真假,从而获取敏感信息。patient_id=5' or sleep(5)--+通过响应时间并没有延迟准确的5秒,首先通过延迟注入,延迟动作是存在,测试延迟注入速度较慢,但适用于 MySQL 5.0.12 以上版本。有时候需要根据具体实际情况可能存在其它一些因素,没有按照语句准确的延迟到5秒。按照语句执行逻辑:OR运算符的优先级高于AND运算符,--+作为一个注释符在查询时并不会执行。
渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享插图2

patient_id=5' and sleep(5)--+这里我换成了and方式是可以准确延迟
渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享插图3

除了SLEEP()函数还有BENCHMARK()``WAITFOR DELAY这类函数可以测试,通常先测试常用函数,不行在考虑使用其它函数。

渗透测试 | 黑白盒某门诊挂号漏洞挖掘经验分享插图4

注入目的已达成,那么接下来看看代码方面

Application\Runtime\Cache\His\4c76a4f64095c59596389c0565f34682.php

//获取患者档案
function getUserInfo() {
    var patient_id=$("#patient_id").val();
    if(patient_id>0){
        $.post('/Doctor/getUserInfo',{patient_id:patient_id},function (res) {
            if(res.status==0){
                if(res.data.file_id>0){
                    var d=res.data;
                    var txt='<dt class="whiteBg">体重:'+d.weight+'kg<span class="r">身高:'+d.height+'cm</span><br>\n' +
                        '血型:'+d.blood_a+'<span class="r">RH'+d.blood_b+'</span><br>\n' +
                        '左耳听力:'+d.left_ear_hearing+'<span class="r">右耳听力:'+d.right_ear_hearing+'</span><br>\n' +
                        '左眼视力:'+d.left_vision+'<span class="r">右眼视力:'+d.right_vision+'</span></dt>\n' +
                        '<dd>个人史:'+d.personal_info+'</dd>\n' +
                        '<dd>家族史:'+d.family_info+'</dd>\n' +
                        '<dd>身*证:'+d.id_card+'</dd>\n' +
                        '<dd>紧急联系人:'+d.emergency_contact_name+'<span class="r">关系:'+
                        d.emergency_contact_relation_label+'</span></dd>\n' +
                        '<dd>电话:'+d.emergency_contact_mobile+'</dd>';

                    $("#user_file_box").html(txt);
                }else{

4A评测 - 免责申明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。

不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。

本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。

侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)

相关文章

webpack打包站点,js文件名批量获取思路
加密对抗靶场enctypt——labs通关
【论文速读】| 注意力是实现基于大语言模型的代码漏洞定位的关键
蓝队技术——Sysmon识别检测宏病毒
内网渗透学习|powershell上线cs
LLM attack中的API调用安全问题及靶场实践

发布评论