首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    macOS上的漏洞可能让攻击者访问Mac上的所有文件

    近期,安全研究人员发现一个与macOS处理系统软件更新有关的注入漏洞可能会让攻击者访问Mac设备上的所有文件。...在部署初始攻击后,他能够逃脱 macOS 沙箱(旨在将成功黑客攻击限制在一个应用程序的功能),然后绕过系统完整性保护 (SIP),从而有效地启用了非授权代码的部署。...“在当前 macOS 的安全架构中,进程注入是一种强大的技术,”Wardle在他的博客文章中写道,“一个通用的进程注入漏洞可用于逃离沙箱、提升 root 权限并绕过 SIP 的文件系统限制。...不过Apple在macOS Monterey更新中已经解决了这个问题,该漏洞及其更新补丁的披露是在 ESET 的安全研究人员发现一个他们称为“CloudMensis”的 macOS 后门之后数周发布的,...参考来源: https://www.infosecurity-magazine.com/news/software-patches-flaw-on-macos/ 精彩推荐

    1.3K30

    汇编寄存器的规则

    另外,较旧的 Mac 使用 32 位架构,但是 Apple 在 2010 年底停止生产 32 位 Mac。 在 macOS 下运行的程序可能是 64 位兼容的,包括 Simulator 上的程序。...Apple Watch 的前两代是 32 位设备,但是第三代是 64 位设备。 此外,在较新的 macOS 设备上发现的 Apple Touch Bar(无疑是花哨的)也使用 32 位架构。...这意味着,一旦离开函数的开始,就不能再假定这些寄存器将保存您要观察的期望值,除非您实际查看汇编代码看看它在做什么。 使用此调用规则的浏览寄存器会严重影响您的调试(和断点)策略。...触发断点后在 LLDB 控制台中键入以下内容: (lldb) register read 这将列出处于暂停执行状态的所有主要寄存器。 但是输出了太多信息。...我们先列出所有的寄存器。 在 LLDB 中,键入以下内容: register read -f d 这将列出所有的寄存器,并使用 - f d 选项以十进制显示格式。

    3.6K50

    LLDB实战之导出Mac微信备份聊天记录的SQLite密码(SQLCipher加密)

    单步跳过/进入/跳出 register: 寄存器操作 next/ni/n/step/si: 同上 参考链接 SQLCipher WCDB C函数形参列表与汇编寄存器的对应关系 0x00 准备工作 查看...S Fri04PM 8:36.19 /Applications/WeChat.app/Contents/MacOS/WeChat 进程id是25132 $ lldb -p 25132 //...,其中$arg1为调用者本身,$arg2为方法名,后面的参数表示传递的实际参数,因此是从$arg3开始的,可以打印整个寄存器和$arg1,$arg2出来看看 (lldb) register read General...0x02 获取sqlite3_key 继续加断点,如果加在sqlite3_key上,会发现拿不到PageSize,查看源码看调用链,pageSize是在void Database::setCipher(...const void *key, int keySize, int pageSize)的时候接收的,断点打在setCipher上 (lldb) br set -n setCipher (lldb) c

    7K31

    查看 Linux 上正在运行的所有 Java 程序列表

    查看 Linux 上正在运行的所有 Java 程序列表 在Linux上查看正在运行的所有Java程序列表,可以通过多种方法实现。...用于列出所有运行的Java进程。...基本使用方法如下: jps -l 这将列出所有正在运行的Java进程的PID和主类的全路径名。-l选项可以显示主类的全路径名或jar文件的路径。...如果你的JDK安装和配置正确,这应该是查看Java进程最直接的方法。 使用ps命令:ps命令是用于查看当前系统进程状态的工具。...你可以结合grep命令,以查看所有Java进程,如下所示: ps -ef | grep java 这会列出所有的Java进程,并显示它们的详细信息,如PID、启动时间、CPU使用时间、命令行等。

    2.1K10

    学习实践|MacOS上的split工具

    文件信息如下:实践操作在MacOS上使用split就更舒服了,应该是更简单、简洁、简便了。...同样使用 --help 命令来查看帮助命令(其实,在macOS这里,可以使用 -h, --h, -he,-hel ,--he 等等不规则的来查询帮助)。...suffix_length] [file [prefix]] split -p pattern [-a suffix_length] [file [prefix]]Aion@Macbook ~ $在MacOS...test03.sql-rw-r--r--@ 1 Aion staff 24083097 11 14 19:05 test03.sqlAion@Macbook split-test $由于此时从文件大小上正好可以分割为...5 隐藏参数说明一个很有意思的事情,其实我在写这篇笔记时,先在macOS上做的测试,一开始只是按照说明进行测试,后续又在 GUN/Linux 上面做了测试,发现多了一个隐藏的参数并没有在macOS里面的

    74540

    汇编和内存

    打开 Registers macOS 应用程序,您将在本章的资源文件夹中找到该应用程序。接下来,构建并运行该应用程序。一旦运行,请暂停程序并启动 LLDB 控制台。...注意:修改 RIP 寄存器实际上非常危险。 您需要确 RIP 寄存器上的数据不会再被使用了,因为新功能将对 RIP 寄存器做出不正确的假设。...因为使用寄存器时,有时传递到寄存器的值不需要全部使用 64 位。 例如,考虑布尔数据类型:您真正需要的只是 1 或 0 以指示是或否(尽管实际上,布尔值将占用寄存器一个字节)。...基于语言的功能和约束,编译器知道这一点,有时只会将信息写入寄存器的某些部分。 让我们来看看实际情况。 删除 Registers 项目中的所有断点。 生成并运行项目。 现在,让程序暂停。...在 LLDB 中输入以下内容: expression -f i -l objc -- 0x55 这实际上要求 LLDB 将 0x55 解释为 x64 操作码。

    1.8K20

    iOS逆向之lldb调试分析CrackMe1

    调试UnCrackable1 首先查看UnCrackable1进程的所有模块,在模块显示的信息中,我们可以看到它在虚拟内存中相对于模块基地址的偏移量。...使用如下命令查看进程所有模块信息 image list -o -f 显示的结果如下图所示 左边的地址为ASLR偏移量(地址随机偏移量0x0000000000208000,右边的地址为偏移后的地址 0x0000000100208000...即每条指令都执行,步入)调试buttonClick函数 调试UnCrackable Level 1的buttonClick函数,我们主要是查看如下图所示的关键代码,并输出相应的寄存器值来辅助分析,具体如下所示...lldb执行流程如下所示(寄存器的值) 在lldb中继续执行 c 指令,可看到iOS设备中弹出错误信息 尝试修改isEqualToString函数返回值,查看程序的流程是否发生改变...,使用如下命令,具体如下所示 register write x24(对应的寄存器) 0x1 修改寄存器后,iOS设备中程序弹出注册成功信息 当然还有一种方法就是我们已经跟踪到隐藏的标签的字符串值

    1.6K11

    汇编和栈

    rdx = 0x0040000000000000 在本节中,dumpreg 的输出将覆盖在每个汇编指令上,以准确显示每个指令期间每个寄存器发生的情况。...RBP 的值被压入堆栈。 这意味着以下两个命令将产生相同的输出。 执行两个都进行验证。 (lldb) x/gx $rsp 这将查看栈指针寄存器所指向的内存地址。...每个参数寄存器只能保存 8 个字节(在 64 位体系结构上),因此,如果该结构需要 8 个以上的字节,则也需要在堆栈上传递该结构。 有严格的规则规定他们的调用方式,所有编译器都必须遵守。...调试器仍应在 executeLotsOfArguments 上停止。 确保您正在查看 “始终显示汇编” 输出并寻找汇编。...(在 LLDB 中使用 x /gx $ rbp 进行查看)。 (RBP + 0x8)将指向堆栈跟踪中前一个函数的返回地址(在 LLDB 中使用 x /gx'$ rbp + 0x8' 进行查看)。

    4.5K20

    MacOS系统上的堆介绍及利用

    Prologue 0CTF / TCTF2019比赛时出了一道MacOS下的堆利用题目,但没找到文章介绍MacOS上的内存管理及攻击方式,这里以该题为例,简单分享一下之前总结的一些MacOS系统的堆管理及利用思路...上,这里和Linux类似 比较有意思的一点是,tiny堆在释放时,会在chunk上写入元数据,我们值得关心的就是这一点。...,比如chunk cache, 以及mag_free_bit_map, mag_free_list, 以及最后一个被使用的region, 以及所有region的链表。...利用MacOS堆的特性leak libsystem_c.dylib 查看程序运行时的vmmap,可以看到程序下方有个Malloc metadata的region,这里开头存放的就是DefaultZone...劫持程序流 - 前置 这里利用MachO的Lazy Bind机制,复写libsystem_c.dylib的la_symbol_ptr表中的函数存放地址(不写原程序的原因是无法leak原程序加载地址) 查看一周发现最优的选择为

    2.4K20

    MacOS上的Pip和Python升级指南

    在MacOS系统上,保持Pip和Python版本的最新状态对于顺利进行Python开发至关重要。通过升级Pip和Python,你可以享受到最新的功能、修复的bug以及提升的开发效率。...本文将为你提供在MacOS上升级Pip和Python的详细指南,助你打造更强大的开发环境。...2、检查当前Pip版本:在终端中输入"pip --version",查看当前安装的Pip版本。 3、升级Pip:在终端中输入"pip install --upgrade pip",等待升级完成。...三、升级Python 1、查看当前Python版本:在终端中输入"python --version",查看当前安装的Python版本。...2、验证Python升级:在终端中输入"python --version",确保显示的是最新的Python版本。 通过以上步骤,你已成功在MacOS系统上升级了Pip和Python。

    7.4K51

    查看python中模块的所有方法

    随着使用python的时间越来越长,安装的python模块也越来越多,时间久了都不记得自己之前到底对自己的电脑做过些什么了,于是乎就想要查看一下自己安装的python模块,现将查看方法总结如下 一、命令行下使用...$ pydoc modules是一样的 三、在python交互是解释器下导入sys模块查看 python的sys模块也是可以用来查看模块信息的 >>> import sys >>> sys.modules.keys...() 四、命令行下使用pip查看 如果你使用的是pip来作为你的python包管理器的话,可以在命令行下直接运行$ pip freeze或者$ pip list来查看安装包的信息...如果你安装过yolk的话可以使用yolk命令来查看包信息,你可以使用$ pip install yolk来安装它 yolk使用简单,只需在命令行下操作即可 $ yolk -l #列出所有安装模块...$ yolk -a #列出激活的模块 $ yolk -n #列出非激活模块 $ yolk -U [packagename] # 通过查询pypi来查看(该)模块是否有新版本 <link

    10.1K22

    ios逆向-app登录协议逆向分析破解

    从达到登录成功,并根据该步骤完成ios逆向分析,文中所有涉及的脚本都已经放在github上面。...这里的数字对应ASCII的值,那要解密响应内容,只需要获取该key、value的映射关系即可。这里使用fridaHook、lldb进行获取该映射关系。...拷贝到macOS中的,scp root@iOSIP:/Developer/usr/bin/debugserver ~/debugserver 瘦身 lipo -thin arm64 ~/debugserver...查看macho基地址:image list -f -o,红色框就是基地址 计算需要下断点的地址: 下断地址=0x0000000000638000+0x0000000100104EF0=0x10073CEF0...b 0x10073CEF0 下断点 运行app 停到了断点位置,读取x0的值,映射函数返回值给了x0寄存器。po $x0 c app继续运行。更多命令可以 help 查看。

    3.5K21

    如何在Electra越狱的设备上使用LLDB调试应用程序

    在3月18日的时候,我就曾发表过一篇关于在Electra越狱的设备上使用LLDB调试应用程序的文章。本文我将在此基础上,做进一步的更新优化。...从Xcode将debugserver部署到你的设备 首先,通过ssh连接到你的iOS设备,查看/Developer/usr/bin/debugserver是否存在。...将LLDB attach到已经运行的进程 在你的Mac控制台上,连接iPhone: ? 在iPhone的控制台中运行 ? 找到你想要attach的进程的pid。然后运行 ?...现在,在Mac上打开另一个控制台,然后运行 ? 在LLDB控制台中运行 ? 在LLDB下运行应用程序 在你的Mac控制台上,连接iPhone: ? 在iPhone的控制台中运行 ?...现在,在Mac上打开另一个控制台,然后运行 ? 在LLDB控制台中运行 ? 重要提示!

    3.1K40
    领券