perl知识点
perl是解释语言,perlapp只是把你的perl程序压缩后放在资源里面,执行的时候会解压的。
script执行后,解压
64位exe文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/d8f51b3eff9148498e16d8d95ecf1869.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
查看字符串
![在这里插入图片描述](https://img-blog.csdnimg.cn/a4ca37e2c86640acbc3fa0b1a8e18e06.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_18,color_FFFFFF,t_70,g_se,x_16)
交叉引用找函数
![在这里插入图片描述](https://img-blog.csdnimg.cn/2273d445e3624316b2fe1fbdebdbf66a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
首先排除flag
搜索perl,没啥进展
通过大佬的WP找到方便理解的博客
![在这里插入图片描述](https://img-blog.csdnimg.cn/00ad0750b553420fac07841ee270db86.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
如果是会解压的话,应该要动调了
64位的不能用od了,x64dbg打开
根据ascii![在这里插入图片描述](https://img-blog.csdnimg.cn/c3dde9c7a214424cbb108a656a1441cd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
搜索,下断点
![在这里插入图片描述](https://img-blog.csdnimg.cn/04f93db4d5b34c728bf42bcf3e74ce3e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
F8步过后发现在执行call perl.40D1A0 后,出现了flag
0000000000410ED5 | E8 C6C2FFFF | call perl.40D1A0 |
![在这里插入图片描述](https://img-blog.csdnimg.cn/dbf594ec14384b4eb90af22fbc2575f4.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pyJ54K55rC05ZWK,size_20,color_FFFFFF,t_70,g_se,x_16)
flag{I_WAnt_dynam1c_F1ag}