Tag: strace

如何从strace输出中解码此信息

我写了一个小的go脚本,并使用strace通过这个脚本跟踪它,我试图使用netlink协议从内核获取审计消息,就像auditd一样。 以下是我去的脚本输出 – http://paste.ubuntu.com/8272760/ 我试图找到auditd提供给sendto函数的参数。 当我在auditd上运行strace时,我得到以下输出 sendto(3, “\20\0\0\0\350\3\5\0\1\0\0\0\0\0\0\0”, 16, 0, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 16 当我扫描我的go文件时,我得到以下输出。 我想解码这个陈述的第二个参数 sendto(3, “\21\0\0\0\350\3\5\0\1\0\0\0\0\0\0\0\t”, 17, 0, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 17 再具体一点 “\21\0\0\0\350\3\5\0\1\0\0\0\0\0\0\0\t” 现在我想将其转换为字符串或字节数组,有没有办法将其转换为字符串或字节数组? 在我的实际go代码中,这个参数是一个字节数组。 https://github.com/mozilla/Audit-Go/blob/testing/netlink_old.go#L58

在尝试将GDB附加到进程时如何解决“ptrace操作不允许”?

我正在尝试使用gdb附加程序,但它返回给我: 附加到进程29139无法附加到进程。 如果您的uid与目标进程的uid匹配,请检查/ proc / sys / kernel / yama / ptrace_scope的设置,或以root用户身份再次尝试。 有关更多详细信息,请参阅/etc/sysctl.d/10-ptrace.conf ptrace:不允许操作。 edb-debugger返回“无法附加到进程,请检查权限,然后重试。” strace返回“attach:ptrace(PTRACE_ATTACH,…):不允许操作” 我将“kernel.yama.ptrace_scope”1更改为0并将“/ proc / sys / kernel / yama / ptrace_scope”1更改为0并尝试使用以下方法设置“set environment LD_PRELOAD =。/ ptrace.so”: #include int ptrace(int i, int j, int k, int l) { printf(” ptrace(%i, %i, %i, %i), returning -1\n”, i, j, k, l); return 0; } […]