(这道题也是本菜鸡在参加的所有CTF比赛中独立解决的第一道题,谨做纪念)

题目:
链接:https://pan.baidu.com/s/1ktDs3UPwUONpDKyIe0IlrQ
提取码:86n1
复制这段内容后打开百度网盘手机App,操作更方便哦;

查壳,C#编写的

dnSpy32打开, 定位到主函数

// hardcsharp.Program
// Token: 0x06000001 RID: 1 RVA: 0x00002050 File Offset: 0x00000250
private static void Main(string[] args)
{AesClass aesClass = new AesClass();string text = "";string strB = "1Umgm5LG6lNPyRCd0LktJhJtyBN7ivpq+EKGmTAcXUM+0ikYZL4h4QTHGqH/3Wh0";byte[] array = new byte[]{81,82,87,81,82,87,68,92,94,86,93,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18};Console.WriteLine("Welcome to nepnep csharp test! plz input the magical code:");string text2 = Console.ReadLine();if (text2.Length != 37){Console.WriteLine("Nope!");Console.ReadKey();return;}if (text2.Substring(0, 4) != "Nep{" || text2[36] != '}'){Console.WriteLine("Nope!");Console.ReadKey();return;}for (int i = 0; i < 32; i++){text += Convert.ToChar((int)(array[i] ^ 51)).ToString();}if (string.Compare(aesClass.AesEncrypt(text2, text), strB) == 0){Console.WriteLine("wow, you pass it!");Console.ReadKey();return;}Console.WriteLine("Nope!");Console.ReadKey();
}

由上面的代码,我们可以知道text是array[]和51异或后得到的结果,我们写个Python脚本求一下text

array = [81,82,87,81,82,87,68,92,94,86,93,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18]
text = ''
for i in range(len(array)):text+=chr(array[i]^51)
print(text)


text=“badbadwomen!!!”
我们发现它将text和text2经过aesClass.AesEncrypt()处理之后和strB相比较,相等的话即正确
text2由代码可知是Nep{……},我们需要解出来的也就是这个
看一下aesClass.AesEncrypt()

// hardcsharp.AesClass
// Token: 0x06000004 RID: 4 RVA: 0x00002148 File Offset: 0x00000348
public string AesEncrypt(string str, string key)
{if (string.IsNullOrEmpty(str)){return null;}byte[] bytes = Encoding.UTF8.GetBytes(str);byte[] array = new RijndaelManaged{Key = Encoding.UTF8.GetBytes(key),Mode = CipherMode.ECB,Padding = PaddingMode.PKCS7}.CreateEncryptor().TransformFinalBlock(bytes, 0, bytes.Length);return Convert.ToBase64String(array, 0, array.Length);
}

普及一下:
CipherMode.ECB:AES加密解密(ECB模式)
PaddingMode.PKCS7:AES的一种填充模式
另外注意Base64和UTF-8

那这样就好办了
在线工具:AES解密

flag:Nep{up_up_down_down_B_a_b_A_Nep_nep~}

Nep欢乐个人赛-RE-hardsharp相关推荐

  1. 第八届蓝桥杯个人赛赛后总结

    前言:2017年5月27日,第八届蓝桥杯个人赛C/C++大学A.B.C组.Java大学A.B.C组共六个小组决赛在北京举行.对于此次比赛,有过欢乐也有过遗憾,原本没打算写赛后总结,但是指导老师要求我们 ...

  2. 怀旧服野外pvp最多的服务器,魔兽怀旧服:最想要去的服务器,野外PVP很“传统”,很欢乐!...

    游戏中我们是朋友,聊天侃地,在这里我们可以无拘无束地发言,不会有任何人阻挠,还有大家最喜欢喷的小编,请把口水收集好,随时准备和小编一起对喷! 魔兽怀旧服最想要去的服务器,野外PVP很"传统& ...

  3. 综合-某假期欢乐赛 (Apri, 2018)

    假期欢乐赛,确实挺轻松的,被逼迫写了题解. A.推数 按列观察,有的列有多个格子,看起来好复杂啊,先放一放. 按行观察,黑色格子在 i 行 j 列: 当 i 是奇数,对应数字第 i 位是 j-1 当 ...

  4. csol战损左轮python_CSOL欢乐拍卖会迎新春 7把战损版武器登录即赠

    新春将至,福利来袭.又到了二月初春时节,不仅一年之中最热闹的春节将至,充满爱意的情人节也即将到来.咱们<反恐精英Online>在新年来临之际,也会推出一系列"新"活动与 ...

  5. 【直播预告】中外互联网大厂欢乐开撕:谁是技术界的嘴炮王者?

    网易云信一周年 特别企划 网易云信一周年,一言不合就携手InfoQ大咖说空降上海QCon全球软件大会,举办高bigger的技术圈「奇葩说」,中外一线互联网公司5位技术大咖相约10月21日(周五晚),欢 ...

  6. 云信“欢乐颂活动”中奖名单

    各位单身汪.老司机: 欢乐颂(song)活动已经结束啦,获奖名单已经出炉: 恭喜55位幸运者 中奖者请后台回复 收件地址+电话+姓名 坐等云信鼠标垫哦

  7. 《紫茗红菱》:“80后”成长的欢乐、疼痛与代价

    最近读了一部很厚的长篇小说<紫茗红菱>(春风文艺出版社2007年2月),作者是我的同族,一个叫鲍尔金娜的蒙古族女孩.当然,这部小说几乎没有一点蒙古的痕迹,有的是现代都市少年男女的最新鲜的故 ...

  8. 【微信小游戏实战】零基础制作《欢乐停车场》二、关卡设计

    1.游戏立项 微信小游戏中有一款<欢乐停车场Plus>的小游戏,大家可以搜索玩下.这是一款益智类的小游戏,游戏中有红.黄.绿.蓝.紫5辆豪车6个停车位,玩家通过可行走路线移动小车,最终让各 ...

  9. C++(15)--面向对象编程实践-欢乐斗地主(vector的花式输出)

    面向对象编程实践-欢乐斗地主 <老九学堂C++课程><C++ primer>学习笔记.<老九学堂C++课程>详情请到B站搜索<老九零基础学编程C++入门> ...

最新文章

  1. U-Mail邮件系统带您体验微信收发邮件
  2. cocos2d python文档_【Cocos2D-X 学习笔记】Cocos2D-x 3.0+VS开发环境搭建[使用Python]
  3. java 对象调用_java 对象调用
  4. 去银行存款,银行打印错日期,到期之后才发现,利息该怎么算?
  5. pcl_openmap_OpenMap教程5 – 3层GIS应用程序
  6. 第八届蓝桥杯-日期问题
  7. Hello,World!的大小(信息学奥赛一本通-T1023)
  8. android中include标签的使用
  9. Python 求解斐波那切(三种方法)
  10. 关于header('location:url')的一些说明,php缓冲区
  11. 极路由3刷老毛子稳定使用锐捷教程
  12. cass软件yy命令_南方CASS软件快捷命令大全,高手必备。。。
  13. 【C语言】- 关机小程序
  14. Linux程式设计入门 - fork, pthread, and signals
  15. Axure 8 设置当前动态时间
  16. [游泳] 游泳学习课程
  17. AI的下一个战场:认知智能的突围
  18. Android播放音频到耳机,Android音乐播放模式切换-外放、听筒、耳机
  19. 6个 Python 办公黑科技,工作效率提升100倍!(附代码)
  20. vue+elementui+echarts饼状图内部显示百分比

热门文章

  1. 旧文新发之十----滨河大道《诗词联碑》序
  2. python从excel读彩票数据统计分析,用matplotlib.pyplot做可视图在程序窗口显示,并可动态切换Canvas的可视图,窗口里还添加了菜单和Button按钮工具栏,按钮换图
  3. websect爬取小米官网数据
  4. 企业网盘选购攻略,如何选择最适合你的云存储服务?
  5. 干货分享 | 推荐几款排版编辑神器及平面设计工具
  6. 一次简单的企业内部安全意识演练
  7. python在园林中的应用_浅谈环境艺术在城市园林中的应用
  8. Windows11Ubuntu18.04双系统制作、安装及软件安装
  9. 【Frida】Frida Hook 实战 某 APK 的账号密码,并分析加密规则
  10. 雷军称37岁财务自由,小米造车是被逼出来的决定;Adobe约200亿美元收购Figma;首批iPhone 14已发货|极客头条...