|
22春学期(高起本1709-1803、全层次1809-2103)《逆向工程》在线作业-000024 L1 }6 B9 Q R {2 K5 M+ j
试卷总分:100 得分:94+ ~9 l7 |* {$ o# x" s
一、单选题 (共 25 道试题,共 50 分), j) {/ W3 `( ~0 X
1.代表文件缓存管理的函数前缀是()。7 H* J$ d, z" G
A.Ex
3 e3 q2 U! d9 s: [$ S8 p6 _6 c% ZB.Ke
R9 x7 `& ]8 S- B9 n/ ?5 EC.HAL
6 W! S# A) m& a+ qD.Cc q) f. S9 f$ v+ y4 Z& h
资料:
3 y0 y, [) m% j
2 [9 ~( y' V7 l: i2.ascii码是一种()
) R, m$ ]3 T: F5 U! TA.字符编码
5 h* ?$ f1 k4 d2 \) M/ \ tB.压缩编码0 `" W( B$ O$ |$ B
C.传输码, }' G# b1 G* o1 {! ]( ?5 R- p6 v
D.校验码
8 d: K' C/ v* |4 l1 A" x0 J5 o资料:: C* M& a* c/ _, u- ]
) Z% D7 C( p9 {6 S, C. c3.为了让操作系统变得简单,将设备驱动程序运行在()级。$ D2 m% E! ?- Z7 A, z0 c
A.R0
) t8 C7 {7 F! gB.R1
& u% A! ?% s" K4 Q5 b- QC.R2/ P$ _- E; O8 m4 ^* `3 S3 E2 x
D.R3' V# T: \3 D! f* L" V: _# Q
资料:* M' [8 {+ f; B* B; ?' g9 T1 q
' c% o7 F4 G6 @) B
4.PE文件中的分节中唯一包含代码的节是()。
^7 U2 F5 k( q: x, VA..rdata
- W4 T" \5 F3 b" X [B..text
3 S2 f/ Z/ E8 D3 G5 I; a6 ^" ~C..data
1 M% F7 n) Z) A! S+ }" M8 zD..rsrc
i- v* l- h2 z资料:' H2 h0 R+ ~+ ]: U7 ]
6 L% X2 I# } @9 ]+ V5.系统服务描述表的英文缩写是()。. A. _1 w" X0 i* u0 ^
A.SSDT
. l/ n1 Q) L: T- A) _B.IAT( `; i6 U$ A: O* A( _! W c0 `
C.GPT
2 H/ H3 R- N c1 k* W2 k8 ~D.IRP$ ?5 X' ~, ?, g# U- Y) \* ]5 M
资料:
5 I! D6 A5 n. C" f4 A/ v& {4 G0 w, W
6.数据目录表(DataDirectory)的第()个成员指向绑定输人。绑定输入以一个IMAGE_ BOUND_IMPORT _DESCRIPTOR结构的数组开始。
# d, o& `* `' M4 z5 }A.106 v0 y0 h. k |! ~- @* t1 A+ T
B.11/ _9 G. g V- p2 j& Q9 `; i
C.12/ Z- }: k# {' d! M# Y. q& r: N
D.132 L" `# J$ ~ {( ?% V& N8 r
资料:, Q" ]1 O' G( B1 I2 h+ l1 g1 {
e# d" R6 c" b2 r3 ~7.由R3进入R0是通过()实现的。/ s, \' o2 e; C
A.内存映射+ A% K/ m/ A! m! _/ i4 O. d
B.基地址重定位- l) q, Q$ g, W+ \2 l: [
C.中断0 F7 I0 J& s( e
D.异常( u% r) M% E! X# X
资料:% J' H, N3 G! H0 w
% [* u* C' S" F* ?
8.IDA是按()装载PE文件的。
3 {8 w# z; C: i x# b# Z% H: @A.时间戳
# v( C ?6 n/ D3 c/ e2 WB.资源. v+ M3 O2 i, B& X6 c
C.区块
. q5 |2 n0 q4 y N: g# `, V8 |D.导入导出函数* E2 F' y9 x/ s# m" ]
资料:2 x/ M y B1 S) j) M
" H1 b* y2 f; D: X8 {& N$ [
9.IDA PRO简称IDA,是一个交互式()工具。
; C- m$ k8 k, M- A; Y% [6 @A.调试+ P% O! K$ P* d0 L: T
B.汇编
" t! ~* b1 j: M2 M7 BC.编译& T* u( E0 Q. a# H z" K
D.反汇编6 [2 G0 k1 Q- g4 T" B. D
资料:' m/ h6 T: ^: g1 l. n, Q
; C8 e% T9 T* r, l8 K10.虚函数的地址是在()时候确定的。
- J. l; R" r/ a* dA.程序编写时$ Y# x2 `. l4 G$ u
B.编译程序时7 `- h- j) x( m/ u: P& X R
C.调用即将进行时
) [" y( W( M$ ?9 _" _D.程序执行后' ?! E) t5 e' B4 V
资料:
) b C( m/ m! z( b6 a
* h$ P3 ?0 i* n$ Q+ h3 ]/ R( U1 F6 l11.获得注册文件属性的API函数是9 k% V* p Y& B/ g+ A f2 N& v# ]
A.FindFirstFileA函数
2 b- @6 X, x, C7 jB.CreateFileA函数: J+ @9 E6 U1 t% I$ h
C.GetFileAttributesA函数
8 f3 E) X5 e9 m& qD.ReadFile函数; i/ I; i* S3 l- I
资料:2 {6 [" ~1 M/ h5 ]/ c9 X G
8 ^, L/ G5 `' _, t( _$ F2 U
12.基址重定位数据采用类似按页分割的方法组织,是由许多重定位块串接成的,每个块中存放()KB的重定位信息4 u. e) m* O ~' r: n. e- C
A.17 j' o/ M6 v/ Q$ V; d2 |
B.2
1 i6 R- |2 U6 n% o* lC.46 J2 v& b* B5 S2 C6 T5 @2 s( Q
D.8
* M2 S2 ^4 A5 Z2 `资料:4 V* g w& m3 G- p o# n
1 A- Q6 X. l( N/ T% A7 g
13.CPU设计者将CPU的运行级别从内向外分为4个,依次为R0, R1, R2, R3,()拥有最高执行权限。2 d$ u; d* s+ I' d+ l4 H
A.R0
D, @0 }+ Q( X( L( L. `) c( hB.R1/ \1 _$ U! f# J |1 K- j
C.R2. r7 x5 y5 s' y
D.R3
; ]( g6 y* L! K2 ?资料:
( \4 j+ P5 W) D6 ~6 Y
. N, |8 U. J# |6 C; D( L14.SSDT通过内核()导出。
+ R: Z0 ^) h1 C) a1 K% `A.NTOSKRNL.exe- S2 u4 b1 B+ K
B.NTDLL.DLL
4 }: }. Q5 v0 y; a) ?0 BC.HAL.DLL+ j4 h1 s9 t! a' Y' ~
D.SHELL32.DLL
( \, i w8 J! j5 o! N( s资料:
, J" Q: t0 A" w( ~0 W U* B# V" ]; f; F, e9 ]' i
15.以下对x86架构指令集的支持是最全的反汇编引擎是()1 R8 E8 s% o4 D& m1 r4 c; B
A.ODDisasm( W7 S. |' r7 ~2 |
B.BeaEngine" \, e. t2 m+ K! w7 i
C.Udis86
0 _1 A: o F2 y- N, O' i8 J& ^D.Capstone5 X% J) ]: t. D3 ~
资料:- o/ s% {7 ^2 `' C* o1 a
7 N1 H J, t9 b. }% C9 r1 x- W9 O0 G' F
16.表示回调函数在进行异常展开操作时再次发生了异常,其中展开操作可以简单理解为恢复发生事故的第一现场,并在恢复过程中对系统资源进行回收的返回值是下面哪个()?
& s% d4 Z) h" k5 v; ^' o* n T7 y2 @+ nA.ExceptionContinueExecution$ A0 X7 v6 h2 c' B& v
B.ExceptionContinueSearch- C" p# ~ X/ W# e- A8 i7 H
C.ExceptionNestedException
! E: \& f g# p0 vD.ExceptionCollidedUnwind5 }9 N8 o2 w( X/ J! k! v
资料:
' M' L& _5 _8 d
: E* S5 c( _4 v5 j$ ?( |) |17.PE文件在定位输出表、输入表和资源等重要数据时,就是从()结构开始的
' X6 D6 ] J9 ]# `2 WA.IMAGE_DATA_DIRECTORY I. L( i3 l( D! o0 B
B.IMAGE _OPTIONAL_HEADER
+ s+ A" |# d# D6 ?. u% z; k. z9 tC.IMAGE_FILE_HEADER. U/ d+ T& c2 A, t5 z7 f# ?
D.IMAGE_NT_HEADER
* N& o; o G* P4 P' t资料:
" X( \; ]" H, V8 e5 |7 T6 x/ \' N" F& ]" ]( b
18.紧跟资源目录结构的就是资源目录入口(Resource Dir Entries)结构,此结构长度为()字节,包含2个字段。
' ]4 n6 i+ b) T/ F3 A FA.4
" n' R. n. D" _B.8; j1 i, e: n5 [$ u
C.12+ a4 d8 f/ K5 A% ^) L! R3 J/ N; ]7 _
D.16# a& p2 c, M7 a1 l, {' F. D
资料:/ i& e: E% {9 L8 j! y" e2 I
2 P P2 p6 b( M+ {$ r+ z" Z
19.()可以将调试程序执行过程中的事件记录下来。
1 k2 M+ P! p; m: QA.断点
4 ~6 v2 G& E$ r& ^3 ZB.跟踪
* x1 \ @+ C0 Y/ u0 K* Y. L! R6 m: r% |C.修改可执行文件$ i( e, Q' t' X
D.参考重命名
% U Z& u1 Y7 _! \7 p4 I' v5 d1 z资料:" n, y* f% l/ X3 ?) L
- F1 P" v- V& ?
20.所有进程的EPROCESS内核结构都被放入一个()数据结构中。2 Z' p. C0 F- o4 @* M% e
A.单向链表% z$ C: @% v; S t5 F1 @/ U
B.结构体1 Q+ e3 q$ v& w# A! W3 F1 }' i' O
C.双向链表6 b) _9 V2 W8 \# Y
D.数组/ u, E2 v4 j7 C1 p
资料:
1 o$ M( M% v% ?, A- d1 z1 Y8 }% O# E2 q" m# d2 ~
21.以下先执行语句块,再进行表达式判断的循环语句是()。) y P/ ?9 G! B2 ^" G
A.do循环; ]. W% J! w' `& F: h3 t
B.while循环( `, m( q; r, D+ p/ N/ Q. M
C.for循环4 L$ B b& N9 v+ r3 J, \, n
D.都不是
; P- A1 B! Q+ _. R9 ]& U: e资料:5 t) i8 s/ X7 N
+ t8 @& Q! x) k! p6 P7 b7 X22.表示回调函数不能处理异常,需要用SEH回调函数的链表中的其他回调函数来处理的返回值是下面哪个()4 ?$ x. X6 d- {$ w$ W) g" v
A.ExceptionContinueExecution4 g# J$ V* ~1 p8 ]" h
B.ExceptionContinueSearch( V, n$ }) `: F ?. G. Z+ k
C.ExceptionNestedException
! t( v7 n, w- s- |# b1 kD.ExceptionCollidedUnwind; Z; J. L7 i- R0 @
资料:
. T, m! k* k1 O; X1 y1 M2 Z
) u+ I( Z5 ^' I4 a) v. U23.DPC和更低的中段被屏蔽,内存不能分页的中断级别是()。
9 w/ D( a! ~7 W" m& KA.PASSIVE_LEVEL! p; w# v6 H% j# d/ u% R
B.APC_LEVEL
# F/ m$ T( H @3 G# N. MC.DISPATCH_LEVEL
$ E" d( L/ y: r: F' @D.DIRQL
, Q( r) k' n- j& a; y8 z l资料:
( @- @! w$ ~$ j# Z; k1 P& Z8 Y# V. o
24.以下动态链接库中哪个负责对象安全性、注册表操作1 k; a1 w; u. v! `% Z' I
A.Advapi32.dll
9 L9 B" b6 r+ p, ?. \0 wB.Comctl32.dll
: M" X0 b, ?6 N) O \4 IC.Comdlg32.dll' w: v: g7 z3 ], p. |: Q' Z
D.Shell32.dll" e S6 J0 ^ b3 |1 ^
资料:
4 I7 v9 ]9 N) i4 f
0 r4 K, E5 N5 d9 D25.MDebug支持多Tab显示()个内存窗口,为内存复制、内存修改提供了丰富的功能
, z; N( `) L" Y3 B# ^" P6 @A.33 a& W7 y+ E& o) L; o X3 x
B.5# i5 g- K3 h1 {& R
C.7
[/ _3 f+ \; |! Q7 {* Y' u% mD.8
d; @3 `& r# x- T$ b资料:/ }, p) l. R3 K9 A6 f/ W* y+ x" V* y# n
) g$ B* r6 o1 l二、多选题 (共 10 道试题,共 20 分)9 W. p9 J2 M8 E% Z6 Z6 V
26.下列是汇编引擎的有()。
/ g7 j1 K! e" O# r8 ^A.ODAssembler
$ _$ i/ a' _7 c0 u$ Q+ {B.Keystone
4 W! \+ ~- R2 }* g3 M1 L" IC.AsmJit8 |& f$ x6 E* n% U' ~
D.Capstone
7 \! I4 n2 b( S" g& E6 |! I P _资料:BC
X! a5 a! _. b( N$ G
7 `. G" P- b1 `: Z, h0 T27.去除警告窗口常用的3种方法是()?
( |! f9 _9 l6 X* q% r: e( CA.修改程序的资源
. l& S( V; k5 U8 c$ {B.静态分析
& [, G; A& \3 C- M) jC.动态分析! E2 A0 w4 t, `& o7 |, M: m1 S7 E
D.放置不管* [) h4 [( u! o. r/ C' g9 a
资料:BC
' {! N: D* d+ [' A& `3 ~, T- V$ c/ j# ?- p: c1 r" Q i0 f2 q
28.以下是for循环的执行组件的是
; d# W$ ~' Z: F& E) p* J9 C8 UA.初始化0 I' T+ u/ F0 ~! ~1 N
B.比较
2 p( a, n9 V m0 P1 \' {C.执行指令& G8 s3 x L: _% u, J
D.递增或递减
- i* x$ `' d$ H5 R7 [0 T资料:BCD
7 Q9 S+ m B7 {3 T9 ~- [
0 K9 Y' x4 A, J+ P29.C++的三大核心机制是什么()7 n# l( W4 G. p$ {; O# G& l
A.封装' m( Y+ I. m8 n8 g6 L
B.继承7 L3 _0 c3 A- }- T2 Y! V
C.对象
, |' b! ^3 J$ }( hD.多态
' F5 E& f3 `* [6 q资料:BD
F0 A2 F0 O1 d: M7 j* I
7 h1 ?3 N" N. E4 Q0 j30.WinDbg支持哪些调试()5 n5 w1 [7 n# A8 X
A.以打开、附加的方式调试应用程序' B. |) Y; m1 A/ S: O: E
B.可以分析Dump文件
8 Y+ R& G7 e" C8 R6 OC.可以进行远程调试
3 U0 e9 `) K9 f; n5 AD.内核调试
# ?. u0 ?# t7 Z2 N资料:BCD; |3 Z) b# r7 M/ _) r0 Z
$ \: v ~$ r& i2 z' V" H31.可以通过()函数调用和()段寄存器来访问TEB结构。3 L* e) |' f# d9 O2 ]7 M. M# I
A.NtCurreentTeb
% C$ d: g% a6 q2 K$ w" _: N3 yB.deviceIoControl& }6 k3 S" f1 x+ f9 D; p
C.FS
: @8 C) C h! G# `7 M/ j( T0 TD.DS n8 c( M* t: G
资料:5 G5 {+ b& i$ q. @1 y
5 Z+ L h: j% ~2 m2 ]
32.下列是反汇编引擎的有()。
7 k5 w8 C7 I; G1 d5 O( yA.ODDisasm1 B. d5 z1 X# E( e8 ]* k1 l
B.BeaEngine
, c0 b% m( {, P& D- w" JC.Udis86, _5 g8 K/ k% y* ?2 p* G5 p
D.Keystone: W, @0 z* l9 @; [) n' Y c0 ?
资料:BC; G% s y# C# @. D/ \, ?+ Z
4 Q8 m B0 b+ c: |& S33.有关进程和线程的数据结构有()。
' m0 d7 y0 |1 E7 a$ H. Y8 OA.EPROCESS$ A- u, O# J4 f6 ~9 ^$ \5 |
B.ETHREAD
7 J* S* y- I# h+ `1 D6 e0 mC.PEB
* ]( ^& v4 r4 G& I7 v# eD.TEB! C5 ?+ p# R/ H& `
资料:BCD
( h& t- r1 ^/ C( q+ i$ p4 r9 f4 d, H, e& T2 p; U
34.常用的十六进制工具有()。. d6 \- p0 B" q5 f' e1 l
A.HexWorkshop
3 a9 K* i$ Z; _B.WinHex+ i4 o0 E3 _7 U$ v
C.Hiew
4 i0 G( h3 `$ n* j5 }, X: P" QD.ApateDNS, Q6 F5 d# B7 \* @" ~$ w
资料:BC* C& F- R3 T# _; ~2 M: o
3 V+ x) E( h* ?/ B) [35.查找具有相同窗口类名和标题的窗口的Windows API函数都有()
- [. o: K; Z8 o- J$ ZA.FindWindowA
4 k3 @9 `) g' |$ ^0 RB.GetWindowText( q2 a% ?; F/ ^6 _7 ?( W1 N
C.CreateMutexA
8 K- e$ N9 Q+ {D.GetLogicalDriveStrings()
. y* {4 I( q$ l; e! N* F资料:B$ G8 K8 _" N: M- }
+ j3 e, n6 q' V6 K1 D1 @5 c三、资料来源:谋学网(www.mouxue.com) (共 15 道试题,共 30 分)
( W7 @! B: I) c! r0 K" N7 a36.Enablewindow()函数的功能是允许或禁止指定窗口6 o! w4 n, d: q. I, N( e/ q# Z1 L
资料:正确- S8 f5 ~; ?7 x$ b' ^" O* K$ {5 ^
" D @0 P1 c9 G/ S/ Z `( D+ m
37.进人指令汇编修改状态,jne指令共2字节,因此用2个nop指令代替,这种跳过算法分析直接修改关键跳转指令使程序注册成功的方法,通常被解密者称为"爆破法"2 ]. B1 e6 U6 B! D2 A; v
资料:正确# Z2 h. H8 `0 M D( r
2 l/ Y) f9 z# `3 L5 `
38.在另外一些情况下,对话框不是以资源形式存在的,通过常用断点就可以拦截不下来) y) G4 K V5 }0 s: |2 i0 H
资料:正确+ G' X( }. `6 Z/ m# ^
! e5 B! V8 @7 {8 U+ ]39.输出表的主要内容是一个表格,其中并不包括函数名称、输出序数信息。
4 Q& y1 B6 V' s资料:错误( X6 Z0 J0 j# F$ F7 m9 ]
- Y, u2 g* x: U: w( I
40.PE文件格式在头部存储了很多有趣的信息。我们可以使用PEview工具来浏览这些信息。
' B' r% C8 L F5 m2 y" O资料:正确/ }( W% A1 x+ R2 Z9 i$ [
' ]" i5 v( e. A8 q6 L
41.输人函数就是被程序调用但其执行代码不在程序中的函数,这些函数的代码不是位于相关的DLL文件中。
0 D5 J( h- k$ r; \资料:错误' l% u1 G1 ^' E8 g7 T) o
: b: [+ f2 R0 x& R
42.所谓粗跟踪,是指在跟踪时要大块大块地跟踪。
/ {) {- Z3 {: T资料:正确% X/ Z0 S& M! }0 b; t
+ Y% @; W, b2 V/ N; s0 u
43.所有在线程中发生的异常,只要没有被线程异常处理过程或调试器处理,最终均交由顶层异常回调函数处理& _- P4 b) o1 S2 }9 R9 b6 G
资料:正确
: G* ~. Y3 X% M! S. S4 Q9 H0 Z9 F: L5 w9 u" u3 a
44.SEH机制只能在用户模式下使用
& _/ O; ` I/ b6 y, _! y$ I0 i资料:错误
6 p! A4 H; g3 Z( k
6 k! y* h c6 R% P8 d& A3 e- h45.软件断点可以监视I/0访问等+ p% \+ v T7 `' `/ Q: o& x3 H9 c
资料:错误
( ]/ v3 I* R1 a: u5 `* i- m
9 @6 F/ i) F" `6 q46.Olly可以直接加载DLL程序,能够支持执行DLL中某个函数
/ O: C0 \$ E/ I9 Z( E% ]* ^资料:正确6 ?) W8 E8 r8 f
. ]/ }! r$ \& `" C) k% L47.WinDbg在用户态、在内核态都最多支持32个软件断点: X- p; v" F# d$ W% h
资料:错误1 Q: V/ I+ D5 ^( F# Y
% |3 A0 u% }/ F& C( e48.如果载入时将默认的值作为基地址载入,则不需要重定位。
* G- r, B4 D" S* r% ]9 i) i8 y资料:正确
1 I7 U6 \! D& K+ |0 q& o1 I$ @: t
' D& B! x5 e8 M* u' y' K49.延迟载入不是操作系统的特征,其通过向链接器和运行库加入额外的代码和数据来实现。3 T6 O3 f9 Q4 f! y
资料:正确
+ G7 w" k X* @ k8 V# a5 I5 ~$ N6 f& @3 h( c I5 t# T
50.虚表的最后一项一定是以0结尾的2 m0 q) D$ L, L$ t
资料:错误8 a& A# E5 {. K; c
P( W1 q" |' \/ y% y6 H; o7 C+ }
" b" z- o$ m3 W' I! ?( C1 N
+ B8 y2 c% S' _
* l r$ |! v: O8 F& b( x
( [' O5 _' y4 z" l
8 G/ w/ e6 H, C1 s3 b3 T1 T! l* B* u" @) Q
1 L0 J5 }9 P# v/ ]) M+ _! {+ y, V% `; o) b0 ~
* e% u# Z7 u3 _
, ~: ]$ m: n3 v6 P3 b5 R) Q( L, r5 B. O
|
|