180705 逆向-Linux的逆向

常用工具和命令

  • nm
    列出目标文件的所有符号
  • objdump
    -d参数表示反编译.text段中的程序代码
  • readelf
    查看ELF文件的各种信息
  • IDA
  • gdb

IDA

与PE程序基本类似,将ELF程序拖入IDA也可以快速的反汇编,主要借助hex-ray插件来反编译出可读性较高的伪代码

实验-passwd_generator

trick
  • patch
  • dynamic debugging
  • programming

gdb

gdb是Unix和Unix-like下的一个调试工具
它没有图形化界面,通过简单明了的命令来调试程序

常用命令:
- r/run [args]
加载程序后使用run命令启动程序
- b/break [address/functions]
在某个地址(记得在地址前要加*,代表这是一个地址)或符号名
- c/continue
继续运行
- n/ni(next)
执行一行源代码/汇编代码但不进入函数内部
建议费事点使用ni,可以避免在有调试信息的时候产生非常神奇的事情(明明只单步了一下汇编却跳了好几行)
- s/si(step)
执行一行源代码/汇编代码并进入函数内部
- x/examine {count} {fmt} {size} {address}
按照一定格式打印内存地址处的数据
- cout表示打印的数目,默认为1
- fmt表示打印格式,如x为16进制,d为10进制,c为字符,s为字符串等,默认为上次使用的fmt
- size表示打印单位,如b(byte), h(halfword), w(word), g(giant)等,默认为上次使用的size
- address表示目标地址,也可使用*来取指针值或

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值