ccxzyhm 2020-05-14 17:37 采纳率: 0%
浏览 295

linux下nasm汇编打印字符时出现段错误如何解决?

centos6虚拟机,因为想要生成可以执行的shellcode,所以没有使用数据段,用了如下方法打印一段字符“You have been hacked".
用nasm编译成功,执行时也打印出了这行字符,但是在后面跟着“段错误”的提示。
转换成shellcode并放入c程序中执行,干脆连这行字符都不打印了,直接报段错误。
请问这段代码哪里有问题?

section .text
global _start
_start:
mov al,4
mov bl,1
push 'cked'
push 'n ha'
push ' bee'
push 'have'
push 'You '
mov ecx,esp
mov dl,20
int 0x80
;add esp,4 ;这句话加不加都存在段错误
  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2020-05-14 17:38
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog