导入表内注入代码(二)

你称之为什么?

这次我想用这个技术改变一个API的功能。我不能确定是否我们可以再称之为API redirection。在这个例子中,我重定向CALC.EXE的ShellAbout()对话框到我的"Hello World!"消息框(在pemaker7.zip中)。你将看到用前述代码并做很少的改动就可以多么容易地实现它。

...
//================================================================
push edi
push esi
push ebx
mov ebx,[ebp-10h]
push ebx
push ebx
call _char_upper
mov esi,[ebp-10h]
mov edi,[ebp+010h]// [ebp+_p_szShell32]
_it_fixup_1_check_dll_redirected:
push edi
call __strlen
add esp, 4
mov ebx,eax
mov ecx,eax
push edi
push esi
repe cmps//byte ptr [edi], byte ptr [esi]
jz _it_fixup_1_check_func_name
jmp _it_fixup_1_no_check_func_name
_it_fixup_1_check_func_name:
mov edi,[ebp+014h]// [ebp+_p_szShellAbout]
push edi
call __strlen
add esp, 4
mov ecx,eax
mov esi,[ebp-18h]
mov edi,[ebp+014h]// [ebp+_p_szShellAbout]
repe cmps //byte ptr [edi], byte ptr [esi]
jz _it_fixup_1_do_normal_it_0
_it_fixup_1_no_check_func_name:
pop esi
pop edi
add edi,ebx
cmp byte ptr [edi],0
jnz _it_fixup_1_check_dll_redirected
mov ecx,[ebp-08h]
mov eax,[ebp-014h]
mov [ecx],eax
jmp _it_fixup_1_do_normal_it_1
_it_fixup_1_do_normal_it_0:
pop esi
pop edi
mov ecx,[ebp-08h]
mov edi,[ebp+18h]
mov [ecx],edi// move address of new function to the thunk
_it_fixup_1_do_normal_it_1:
pop ebx
pop esi
pop edi
//================================================================
...

时间: 2024-10-26 11:07:43

导入表内注入代码(二)的相关文章

导入表内注入代码(一)

(包括:itview.zip (87.1 KB) pemaker6.zip (96.6 KB) pemaker7.zip (193 KB)zimport.zip (130 KB).译注:本文代码可在VS2003及WINDOWSXP+sp2下正常运行,Windows2000下ITview功能有异常.) 本文介绍注入代码到PE(Portable Executable可移植的执行体)文件格式的Import Table(导入表,也有译为"引入表")技术,其也被称为API重定向技术(API re

如何批量生成1000条小写字母与数字组成的16位随机字符串并插入到数据库表内

问题描述 如何批量生成1000条小写字母与数字组成的16位随机字符串并插入到数据库表内 解决方案 解决方案二:生成随机数部分Randomrd=newRandom();改成Randomrd=newRandom(Guid.NewGuid().GetHashCode());插入数据库这个就没多大意思了吧或者你也可以生成2000条guid码,然后取出中划线取某段16位长度,然后去除重复的字符串后取前1000条插入数据库解决方案三:引用1楼starfd的回复: 生成随机数部分Randomrd=newRan

求Excel表导入到sql表中的代码。

问题描述 求Excel表导入到sql表中的代码.要完整的.我是新手.想学.前台的也写出来 解决方案 解决方案二:在线等待阿,求大虾阿,急阿解决方案三:第一步:将EXECL表读到datatable中publicDataTablexsldata(){try{stringFileName="~/Download/"+Path.GetFileName(FileUploadField.FileName);if(File.Exists(Server.MapPath(FileName))){File

excel表内的时间导入到mysql datetime类型的数据是0

问题描述 excel表内的时间导入到mysql datetime类型的数据是0 excel表内的时间导入到mysql datetime类型的数据是0000-00-00 00:00:00,该怎么处理才好 工具是navicat for mysql 解决方案 你先在excel里把时间格式调整一下吧. 或者你先把excel里的数据导入到 sqlserver里, 毕竟他们是一家母司的东西, 兼容性比较强一点. 导入到sqlserver里了, 再导到mysql就不再是什么难事.

sql-C#如何将combobox里面我选择的项和表内的一个数值比对,如果相符则进入对应的页面。

问题描述 C#如何将combobox里面我选择的项和表内的一个数值比对,如果相符则进入对应的页面. 我们数据库课程设计做学生成绩管理系统. 我现在在做登录界面的代码,对应的表结构是user_name,user_pwd,status遇到了一个问题:就是只要我输入的用户名和密码正确,在combobox里面选择管理员就进入管理员页面,选择学生就进入了学生页面.表里面的status是标注这个账号是什么角色,想在代码里加上一个条件就是希望能将combobox里面我选择的项和表内的status比对,如果相符

简单有用的SQL脚本 (行列互转,查询一个表内相同纪录等)_mssql2005

行列互转 复制代码 代码如下: create table test(id int,name varchar(20),quarter int,profile int) insert into test values(1,'a',1,1000) insert into test values(1,'a',2,2000) insert into test values(1,'a',3,4000) insert into test values(1,'a',4,5000) insert into tes

java指定查询数据库表内容并用一个二维数组a来显示出现的问题

问题描述 主要通过"元件名"和"生产厂家"2个内容来查询数据库并显示结果部分代码如下:Objecta[][];Objectcolname[]={"元件名","生产厂家"};.....a=newObject[30][2];table=newJTable(a,colname);......if(eb.getSource()==b_enter){try{inti=0;sqll=sql.connect();a1="'&quo

PHP防注入配置与php防注入代码

1.将safe.func.php传到要包含的文件的目录 2.在页面中加入防护,有两种做法,根据情况二选一即可: a).在所需要防护的页面加入代码 require_once('safe.func.php'); 就可以做到页面防注入.跨站 如果想整站防注,就在网站的一个公用文件中,如数据库链接文件config.inc.php中! 添加require_once('safe.func.php');来调用本代码 safe.func.php 代码如下:  代码如下 复制代码 <?php /**  * 防注入

浅析SkipList跳跃表原理及代码实现

本文将总结一种数据结构:跳跃表.前半部分跳跃表性质和操作的介绍直接摘自<让算法的效率跳起来--浅谈"跳跃表"的相关操作及其应用>上海市华东师范大学第二附属中学 魏冉.之后将附上跳跃表的源代码,以及本人对其的了解.难免有错误之处,希望指正,共同进步.谢谢.     跳跃表(Skip List)是1987年才诞生的一种崭新的数据结构,它在进行查找.插入.删除等操作时的期望时间复杂度均为O(logn),有着近乎替代平衡树的本领.而且最重要的一点,就是它的编程复杂度较同类的AVL树