游客您好
  • 点击联系客服

    在线时间:8:30-18:00

    客服微信

    Wkr-3000y-kf

    电子邮件

    3000y@wenkeruan.com
  • 手机版

    随时掌握游戏动态

  • 扫一扫二维码

    添加微信客服

Lv.5 解脱境
277号会员,0活跃值,2022.10.27 加入
  • 207发帖
  • 173主题
  • 0关注
  • 0粉丝
这个人很懒,什么也没有留下。
独家推荐 更多>

[安全工具] 初步了解tgs插件的写法(一)

[复制链接]
快要发癫啦 发表于 2023-1-4 09:08:12 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
编写需求条件:0 c; Z1 `! |$ P4 ^

, R9 a+ ?- O; B5 l# ]8 Q
    od工具(看雪论坛有下), 程序编写工具比如(delphi, vc++)
( n8 N; V7 p3 k" ~4 R: i) F$ D5 s
7 ]9 X- Z: M/ \" y

3 p; |( F, @/ R1 I# C
编写过程) A- p# a8 Q: e4 q! Z3 U
) L) u* _, R6 H$ K4 W
第1步:3 s9 a* B% W) C

: I1 |; J6 I; E, A& p- c
    用编程工具写一个注入程序, 可以dll注入到tgs1000.exe 里面+ ^( n. X2 f0 S9 e! f

! X' W8 }; Q# c! ]/ n6 x5 I

8 ~+ `; Q1 D8 V0 ~8 X4 M# l
第2步:9 F: ~9 S7 L7 Z1 d$ V
$ j$ d, t& d1 s5 J  E8 A8 Y
    打开od工具, 调用菜单打开功能 读入tgs1000.exe F9运行程序; X8 I: j! Q  `1 W' a- Y
# s4 B7 ~! P. \) I+ `( D- X
    启动客户端进入游戏(后面要用客户端)
% y4 k4 [: k, Q8 b: z

6 l- O+ Y) X0 f" v0 f" S& x7 c
    调用 菜单->查看->可执行程序 看到列表里面 双击路径是tgs1000.exe
  \$ f: L5 R- O% f$ V. f

; _8 `+ H2 s) E9 {: X. f4 D
    在出现的界面上右键 菜单->查找->所有参考文本字符串  od 会扫描程序 ) N: k8 v5 Q( c# M
! v: b7 Y, m# x; l! D" q
    提取出参考字符串, 然后右键 查找文本 输入 <system> 字符, 这时可以看到) W8 N; n/ Z6 a# }- p& c% I
: Y& Z# r3 O$ t- _  y
    od停在
6 k" q8 ?$ q' S
. m  W+ n% A+ T% E0 j
    0052A0C7 mov     edx, 0052FDD0   ASCII "<SYSTEM>: "
0 R- Y9 D2 R6 G/ l& y9 y7 N1 I/ d( c
$ e1 i) P/ h( u5 [
    双击这一行 再次看到od定位在汇编代码显示页面
+ v6 ^( R" r0 m- ^. r

! j( S" F9 U  z9 C8 I# g
; S5 X- h5 T4 z
        0052A0C7   .  BA D0FD5200   mov     edx, 0052FDD0                    ;  ASCII "<SYSTEM>: "
  e5 M6 J, t6 O6 Q0 ?; _( e  o
        0052A0CC   .  E8 C7A5EDFF   call    00404698                                
6 f% ?3 m3 }) o4 t' `  e
        0052A0D1   .  8B95 ACDEFFFF mov     edx, dword ptr [ebp-2154]        ;  赋值edx 为中间屏幕显示的内容
3 ^# }( ^6 v/ W- Z) B! b
        0052A0D7   .  B9 03000000   mov     ecx, 3                             ;  这里是色彩的选项 后面会调用- q$ D) `: T# Z. {# J3 R; K
        0052A0DC   .  A1 70855600   mov     eax, dword ptr [568570]             ;  这个是UserList地址 参考侠中道代码可以知道        
- j# N' G9 J. o: n6 X5 s
        0052A0E1   .  E8 D21A0100   call    0053BBB8                         ;  屏幕中间喊话的call 0053BBB8
; H" W9 _/ O- d' @2 P

$ ~) H1 e* q/ j; f
    定位在 0052A0C7这一行 在这里双击下断点, 在客户端用GM喊# ?????& ^' O" S7 |  N) W  O4 k
    ) m8 m/ t" S9 }( d9 m
    这时od会被中断, 断在刚才下的断点处, 这时按下F8
6 |. ^$ x1 n9 {/ N4 O
: q+ k  b& G9 B  d5 |) p
    到call 0053BBB8 部分 按F7 进入call里面 这里是根据ecx值 取得喊话色彩
' B, b" [# `' p* p6 N

# j: H8 D' \+ s% ^
    同时发送数据给客户端+ }' W6 }9 S5 x4 F5 C8 T  ^% Q- Z

, `1 h' {  |/ N9 R# b# }! H. `
    " B$ [% U  l! |8 m) }0 U
    进入call之后 一路F8 到下面这里 这里的 eax 就是刚才ecx值 在上面部分已经交换过( U. s. a4 B; N. F* i/ c
  ) f; L# S4 u% N7 _; Q% N0 m
        0053BBFC  |.  83F8 0F       cmp     eax, 0F                          ;  Switch (cases 0..F)% p, t5 h0 l! a3 e7 L7 Z
        0053BBFF  |.  0F87 41020000 ja      0053BE46
/ H2 I6 p; m# y7 f' {0 j' @

0 t- B* s9 f2 m$ e' j; m6 N
    eax 这里是3 一路F8比较下去到下面这里
$ L3 ]: |- ]7 P$ z& }8 q

6 N* S. M* A: [; p9 f: \! D
        0053BCD9  |> \66:B9 1F00    mov     cx, 1F                           ;  Case 3 of switch 0053BBFC& P% A8 q( C1 c' r5 Q
        0053BCDD  |.  66:BA 1F00    mov     dx, 1F' H; ~/ Q1 V/ I3 [3 q6 \
        0053BCE1  |.  66:B8 1F00    mov     ax, 1F5 T$ O) z0 ]0 B% p8 ~5 e4 ~, d
        0053BCE5  |.  E8 EA54F2FF   call    004611D4
/ c, d' J2 y5 z$ e+ X
6 B7 w2 ^+ p% n( z2 U
    这里的 cx, dx, ax 看到过侠中道代码的就知道是 Winrgb(r,g,b:word) 的3个参数 + s8 `8 F" o' Z2 B' N
   
) E0 ^6 j/ e+ ?# y( t7 U7 X9 n
    call    004611D4  就是调用 winrgb

- j; H# R# w- z  d4 m# N+ y
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

三千游戏官方客服

扫一扫二维码

添加qq客服

Powered by Discuz!X3.4 ©2001-2013 Comsenz Inc.闽公网安备 35099902000100号增值电信业务经营许可证 闽B2-20220593 闽ICP备2023014375号