草庐IT

hook_event_proc

全部标签

知道套接字目标进程的 Linux 内核钩子(Hook)

我正在寻找一个特定的地方来向linux内核添加某种Hook,这将允许我执行以下操作:仅检测TCP连接进入环回(127.0.0.1)的情况检测数据包的源进程是否与目的进程相同如果是这种情况,则允许连接,拒绝任何其他环回连接(一个进程到另一个进程)我一直在研究netfilter钩子(Hook),但它们似乎不符合需要。bpf过滤器只查看数据包本身。我也在看socket-connect的LSMhook。我可以尝试从socket-connectHook实现这一点,方法是查看哪个进程当前绑定(bind)了请求的端口,以预测连接将连接到哪里,这听起来很老套。 最佳答案

知道套接字目标进程的 Linux 内核钩子(Hook)

我正在寻找一个特定的地方来向linux内核添加某种Hook,这将允许我执行以下操作:仅检测TCP连接进入环回(127.0.0.1)的情况检测数据包的源进程是否与目的进程相同如果是这种情况,则允许连接,拒绝任何其他环回连接(一个进程到另一个进程)我一直在研究netfilter钩子(Hook),但它们似乎不符合需要。bpf过滤器只查看数据包本身。我也在看socket-connect的LSMhook。我可以尝试从socket-connectHook实现这一点,方法是查看哪个进程当前绑定(bind)了请求的端口,以预测连接将连接到哪里,这听起来很老套。 最佳答案

c -/proc/[pid]/pagemaps 和/proc/[pid]/maps | Linux

我正在努力了解标题中提到的两个文件。我已经查过这些位是什么;但是,我无法理解如何从它们中提取有用的信息(或者我只是以错误的方式接近它)。让我解释一下:页面映射是一个相当新的“特征”伪文件,它包含分配给当前[pid]的虚拟页面的物理框架信息。也就是说,给定一个从地址x开始的虚拟页面,假设虚拟地址开始为“vas”,我可以使用vas索引页面映射文件以获取映射的物理页面框架的64位。这些位包含有关该虚拟页面的信息。然而,当我提取位并进行一些移位时,我迷失了所见。位表示如下:0-54是页框号,55-60是页移,第63位是当前位,还有一些我不太感兴趣的位。在我使用/proc/[pid]/maps中

c -/proc/[pid]/pagemaps 和/proc/[pid]/maps | Linux

我正在努力了解标题中提到的两个文件。我已经查过这些位是什么;但是,我无法理解如何从它们中提取有用的信息(或者我只是以错误的方式接近它)。让我解释一下:页面映射是一个相当新的“特征”伪文件,它包含分配给当前[pid]的虚拟页面的物理框架信息。也就是说,给定一个从地址x开始的虚拟页面,假设虚拟地址开始为“vas”,我可以使用vas索引页面映射文件以获取映射的物理页面框架的64位。这些位包含有关该虚拟页面的信息。然而,当我提取位并进行一些移位时,我迷失了所见。位表示如下:0-54是页框号,55-60是页移,第63位是当前位,还有一些我不太感兴趣的位。在我使用/proc/[pid]/maps中

linux - Hook 到 linux 键事件处理

我想加入linux桌面键事件处理。按CapsLock应该会进入某种命令行。我要实现的一些命令:d/x:从当前光标位置删除直到字符x。(灵感来自vi)a:转到行首,如pos1。(灵感来自emacs)。k:删除直到行尾。(灵感来自emacs)。...这些命令应该适用于任何文本字段:浏览器、邮件客户端、gnome终端......AFAIK低级xmodmap在这里帮不了我。这样的事情可能吗?我需要把Hook放在哪里?当前目标平台是Ubuntu>=14.04背景:我想Handlebars指放在F和J上,不看键盘就可以使用计算机。多年来一直为A-Z工作,但Pos1/End等键不容易访问。如果您不理

linux - Hook 到 linux 键事件处理

我想加入linux桌面键事件处理。按CapsLock应该会进入某种命令行。我要实现的一些命令:d/x:从当前光标位置删除直到字符x。(灵感来自vi)a:转到行首,如pos1。(灵感来自emacs)。k:删除直到行尾。(灵感来自emacs)。...这些命令应该适用于任何文本字段:浏览器、邮件客户端、gnome终端......AFAIK低级xmodmap在这里帮不了我。这样的事情可能吗?我需要把Hook放在哪里?当前目标平台是Ubuntu>=14.04背景:我想Handlebars指放在F和J上,不看键盘就可以使用计算机。多年来一直为A-Z工作,但Pos1/End等键不容易访问。如果您不理

linux - 如何安装 svn post-commit 钩子(Hook)

我在Linux上运行SVN。我希望在提交后运行自动部署。根据我的搜索,svnpost-commit似乎可以解决问题。但是我无法从我的SVN安装中找到SVNpost-commit。所以我想知道它是否是一个单独的安装?有没有我可以下载和安装的SVN提交后Hook? 最佳答案 首先,您可能不想在提交后执行此操作。原因是您不想在Hook中做任何需要太长时间才能完成的事情,因为用户必须等待Hook完成才能继续。要回答您的问题,请查看您服务器上的存储库目录,您应该会看到以下目录和文件:自述文件.txtsession数据库格式Hook锁其中一个目

linux - 如何安装 svn post-commit 钩子(Hook)

我在Linux上运行SVN。我希望在提交后运行自动部署。根据我的搜索,svnpost-commit似乎可以解决问题。但是我无法从我的SVN安装中找到SVNpost-commit。所以我想知道它是否是一个单独的安装?有没有我可以下载和安装的SVN提交后Hook? 最佳答案 首先,您可能不想在提交后执行此操作。原因是您不想在Hook中做任何需要太长时间才能完成的事情,因为用户必须等待Hook完成才能继续。要回答您的问题,请查看您服务器上的存储库目录,您应该会看到以下目录和文件:自述文件.txtsession数据库格式Hook锁其中一个目

c - 有没有比解析/proc/self/maps 更好的方法来找出内存保护?

在Linux(或Solaris)上,有比手动解析/proc/self/maps更好的方法来确定您是否可以读取、写入或执行存储在一个或内存中有更多地址?例如,在Windows中您有VirtualQuery。在Linux中,我可以mprotect来更改这些值,但我无法读回它们。此外,除了做一些非常具有侵入性的事情和使用ptrace之外,还有什么方法可以知道这些权限何时更改(例如,当有人在我背后对文件使用mmap时)>在进程中的所有线程上拦截任何可能影响内存映射的系统调用尝试?更新:不幸的是,我在一个JIT内部使用它,它几乎没有关于它正在执行的代码的信息来获得常数的近似值。是的,我意识到我可

c - 有没有比解析/proc/self/maps 更好的方法来找出内存保护?

在Linux(或Solaris)上,有比手动解析/proc/self/maps更好的方法来确定您是否可以读取、写入或执行存储在一个或内存中有更多地址?例如,在Windows中您有VirtualQuery。在Linux中,我可以mprotect来更改这些值,但我无法读回它们。此外,除了做一些非常具有侵入性的事情和使用ptrace之外,还有什么方法可以知道这些权限何时更改(例如,当有人在我背后对文件使用mmap时)>在进程中的所有线程上拦截任何可能影响内存映射的系统调用尝试?更新:不幸的是,我在一个JIT内部使用它,它几乎没有关于它正在执行的代码的信息来获得常数的近似值。是的,我意识到我可