看下字符串表里面有可读字符,跟踪跳转
跳到这说啥sp值错误
看下堆栈
往上翻到分析sp失败的地方
两个start at 前面的一坨玩意应该是混淆的东东
动调调了半天啥也没调出来,嫖了下大佬的解题思路
这玩意先取lea后面那串字符的地址,然后根据move的第二个操作数来决定取出几个字母
比如这个,取出这串字符的第一个字符,就是‘u’
取出这串字符的第一个字符,就是 ‘n’
注意这里取了四个字符,more
就这样依次取下去,得到完整的flag: unctf{Rust_more_safety_than_YLB’s_Platform}
这中间有个 ’ 注意这个是英文的引号,不知道咋搞的复制过去就变成中文的引号了