攻防世界-666 wp
首先下载附件解压到桌面,将附件移到ExE判断文件是否有壳
无壳,是64位ELF类型的可执行文件,所以将文件放进ida64,查看主函数
v5是需要输入的内容,v5的长度等于key,用s和enflag进行比较,相等就输出You are Right .
观察encode函数
a1即为主函数中的v5,a2即为主函数中的s,对a1进行处理可以得到a2,根据循环可写逆过程
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main() 5 { 6 char a1[20],a2[20]={"izwhroz\"\"w\"v.K\".Ni"},v3[32],v4[32],v5[40]; 7 int v6,i; 8 i=0; 9 v6=0; 10 for(i=15;i>=0;i-=3) 11 { 12 v3[i+2]=a2[i+2]; 13 v4[i+1]=a2[i+1]; 14 v5[i]=a2[i]; 15 a1[i+2]=v3[i+2]^18^6; 16 a1[i+1]=(v4[i+1]^18)+6; 17 a1[i]=(18^v5[i])-6; 18 } 19 a1[18]='\0'; 20 printf("%s",a1); 21 return 0; 22 }
运行得到flag:unctf{b66_6b6_66b}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!