首页
社区
课程
招聘
[分享]分享一下lldb学习的记录
发表于: 2019-8-5 09:58 10317

[分享]分享一下lldb学习的记录

2019-8-5 09:58
10317

菜鸡的成长过程,如有错误,实属正常。

lldb使用

print打印内容可以缩写成p,也可以给变量赋值,例如p $0=11,因为print也相当于上expression —

expression 改变某个变量的值,可以缩写成e,例如 e $0=20

po打印复杂变量,以object方式打印,相当于 e -o —

p/x以16进制的格式打印,例如p/x 16

p/t以2进制格式打印

p/c以字符格式打印

p/s以字符串格式打印

continue取消程序的暂停,可以缩写成c

next如果当前代码上函数,不会跳进函数,但是会执行这个函数并继续,缩写成n

step如果当前代码不是函数,效果和next一样,如果是函数,则进入函数,缩写成s

frame info查看当前代码的行数和源码文件

thread return立即返回跳出当前栈,后面的部分将不会执行,可以伪造返回值

breakpoint list查看所有断点,也可以缩写成br li

breakpoint disable关闭某个断点,根据查询到的序号,缩写是br dis

breakpoint delete删除某个断点,缩写是br del

breakpoint set设置断点例如breakpoint set -f main.m -l 16,可以缩写成br

b也可以断点,但和br不是同一个命令,只是效果差不多。b main.m:17

b isSuccess也可以根据函数名创建断点,仅限给c函数断点

br s -F isSuccessbr也同样可以,仅限给c函数断点

br -F “-[NSArray objectAtIndex:]”也可以object-c的方式来断点

b -[NSArray objectAtIndex:]b命令的object方式断点

x查看内存,x/4c $str,查看数组中的4个字节,x/1w ‘$str+3’ 去掉3个字节

chisel使用


常用的方法

pviews打印当前视图结构

pvc打印控制器信息

visualize将指定控件在mac以图片方式展示,后面参数用控件的地址,例如visualize 0x10031b2f0

fv查找指定的控件,例如fv UIButton

fvc 查找指定的控制器,例如fv FirstViewController

show/hide显示指定控件和隐藏指定控件,参数也是用地址

mask/unmask给指定控件加一个透明的层来锁定控件位置,和删除透明层

border/unborder给指定控件加一个边框来锁定控件位置,删除边框,注意边框是红色的,如果想更改颜色,可以设置下颜色,例如border —color=black 0x100221ac0

caflush刷新渲染,相当于重新绘制

bmessage对指定实例的方法设置符号断点,参数是字符串,里面是object-c,例如bmessage “-[FirstViewController buttonClick:] ”

wivar 在对象实例变量上设置观察点,相当于监视

pinternals打印view的内部详细信息

pclass打印view的层级信息

pdata对编码过的数据打印,等同于-[NSString initWithData:encoding:]

pkp通过-valueForKeyPath:打印key path对应的值。例如pkp self.view


最后分享贴两个看了讲的很好的,一个是主要将lldb的,另一个是chisel使用的。

https://objccn.io/issue-19-2/

https://blog.csdn.net/sun2728/article/details/72930319


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2019-8-5 15:21 被misskings编辑 ,原因:
收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 199
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
2019-8-6 16:29
0
雪    币: 1119
活跃值: (2030)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我想咨询一下,就是我刚刚开学C#语言,然后我到时候要学IOS逆向,你可以跟我讲一下学习IOS逆向的最初先把什么搞定吗?就是学习计划可以分享一下给小弟吗?感谢了,希望你能回复,感谢你!
2019-11-14 01:19
0
雪    币: 1490
活跃值: (9928)
能力值: ( LV9,RANK:240 )
在线值:
发帖
回帖
粉丝
4
武鹰tendy 我想咨询一下,就是我刚刚开学C#语言,然后我到时候要学IOS逆向,你可以跟我讲一下学习IOS逆向的最初先把什么搞定吗?就是学习计划可以分享一下给小弟吗?感谢了,希望你能回复,感谢你!
额。那你的路还挺远的。
我个人觉得,至少你得先熟练掌握一门语言了,然后再看看object-c和c/c++。然后再看看基础的逆向书籍,一些常用工具的用法。没啥系统的学习计划吧,刚开始学最重要的是能用自己平时学到的东西,运用起来,做点实用的东西。多实战。
2019-11-14 16:06
0
游客
登录 | 注册 方可回帖
返回
//