HBCTF第四场WP-转载

HBCTF第四场WP

https://blog.ctftools.com/2017/05/post157

发表于2017年5月23日

Misc

叙利亚-最喜欢签到题啦

题作者:Dr3@m WriteUp作者:Dr3@m

原题:upsjrbhqaog{hegbn}

看到这种”{}”被放在奇怪的位置并且最后是”}”的,一定会有栅栏密码,放到工具解密即可,在ctftools.com提供了在线解密工具,解密得到如图:

在知道答题格式是hbctf{}的前提下,很容易知道还存在凯撒密码,将uopgs{jhrebghbqna}使用凯撒解密得到如图:

伊拉克-爱爱我

题作者:Dr3@m WriteUp作者:Dr3@m

原题地址:http://125.ctftools.com/

右击查看源码即可看到

做啥题,先听听歌

看到其中go_on.html,打开这个页面,继续查看源码,再打开……直到看到

打开得到一张二维码,扫描得到:

504B0304140000080800D378B34A324B3611190000001C00000004000000666C61674B74F7CA4A718F3237F5C9F433354B84D049952E6981B6B600504B01023F00140000080800D378B34A324B3611190000001C000000040024000000000000002000000000000000666C61670A00200000000000010018001751F5746ED0D2015176F8616ED0D2017BF67C1D6BD0D201504B05060000000001000100560000003B0000000000

看到开头”504B0304″,知道是zip,把这段hex用winhex或者HxD保存为zip文件,解压即可得到文本:

aGJjdGZ75LiN56a75LiN5byDfQ==

base64解码即可

Crypto

阿富汗-wannacry3.0

题作者:逍遥自在 WriteUp作者:逍遥自在

原题下载:http://hbctf-1252906577.costj.myqcloud.com/crypto/giveyou.zip

本题中的 n1,n2 为 4096bit,这在理论上是不可能分解的,但是 RSA 有以下常见几种后门情况:1.加密指数过小 2.p、q

之间的差值太小。 3.pq 有一方的值太大或者太小 4.在有多个 N 的时候,他们某些 n 之间有相同的因数 等等就不列举了

可以看出 e=65537 ,所以 1 不可行,2,3 还是需要一定的计算量的,所以尝试 4,把 n1,n2 辗转相除求最大公约数,得到一个不是 1 的数,继而分解开 n1,n2。这里使用 java 中的BigInteger。里面直接含有 gcd()。

通过 rsatools 求出 d1,d2.

求出 key1,key2,一千万以上的第一个素数是 10000019,进而反推,可以得出 flag。

附上脚本(需要pycrypto):

Python

# -*- coding:utf8 -*-fromCrypto.CipherimportAESfromCrypto.CipherimportDESimportbase64n1=0xa0179efbcb5716782adc8a3d25d25cea916616d77961782512ba8587962e51f3d50fcfcbd659bff68361f19f167e1709bac576b906ca8da6485fddc03dfcd02206681a4c9591913bc6c1152a6b373aceee63c3ca9d69cf8d9858c36db3ee9d77b10141640c41def069d1658f1fb4a1bac8cdbaf22f86f30af514e1edc9cf64955cf050109833ac2f4e6e96e30462980e4a5741131323b514d8ad3c1f2e364797faf9ec76fa1f0ed1b4cb57fe0157006cfdf2dc32af209111dadec48c4d402edd74d206a3b6bb222046cb4c3c3dc2b4db40504e4e0ed06d8beba27d69e98824f6d2a2e597e6f4a2cd1e145b41bf9fc4cf5904c2883e0d42114f8b1e58a0c72c63ed0ad8037878caaeca74828937dc261780fd8b79160e8e04a9ad7fec508ccda0bf1f28f39602601a7a6211330b111086f40f6dcd10e3bdc90ade926fce5c38aae86353e828b057df6767ecd61809eafa0e7e826f811979292fbe361f37cd7080ab9e9f6eb54dbac264cbe7916dfce426ab875e2291e7062d54bb0659abb4c0314815bf3172546ebbbc8882a789422cd9c7e3a6bb3878e1024f4b1d98a2824abb30a29953df92b164f75a0b018d488bf22a6624dc418e5e83a7c9c3a7df1afaf8e706570ca0c3ad743b14f36bcc7d83621bfcdc045c10243144eeb4a0fc22c355294969b3a849dd2aa495efa0372bb0c7b701f9fca1a6d6b3fa7f3df7e19829a9n2=0x8176BECCE5A755AA0298F3F869533512478A13A41FD2040D6EFF5ED5A88242ED3BEA5B4ADAAF6D387683AAD94642FEB9C3C6B01E9AD5183B73B36E950EE8B9FB76974E1AC8A8266E377DBB714A0788FE94DB391A3B620D63F7B8826DC616E9B6B72E72AB5C1D8708159F8BD1B79B1688B5E789E28B25FE4B74E31029783B47CD291D64499D28BA8350CA0A101EF157E15BE47AD216BB57700D86F8DE0997A0FD79A6952C8E434B1961FA37DA728833707B97539DD38ACBE0790F7D547AF929788FA9EABBEDA44CFD44166883901C1F4649926AE4F2BE07E7701536A5D380D7C51C1B374F717857765DE78BBEA7C3F78451E0278C05581AA7AF075132B2D13E05B92975BAAB4D03D9B6079D38E95DCE55E24735366DD43AEB49F49231FCAC6BFDBE6D43A45A0B95F56135D7BA3531B93E4E5F384928A0D7CE68390F10DD58CE916B1D62776E9883CEAADF5025CA6F536A28CF9539B88C881B35106DCAD7D9556074B963A20BF8ACD47CD17E18E24D51688E16A9E40F0355FCD313667658245528074A4491137D890B754C0A7E8AF9FBC946E00D9F0D1E7708E2BA732FF6755872833CA78923B52D26EF82876A942FF83E3F431CB08E0FCB4C58057C96E3F6DCA0F3AAE7DCD06527625987391C83EDC511798C8D272E6BF13E3E3C019E39D11B315D762A07ECFE589FA72EEA4E7DC2C571F8BB2D5BC4B3B4BFBDAE287B95C2C64Bd1=0x23F98AE15C2D42C058295CEB26BFA1DF9832CFB935EE80381C804B974F5933534EB291E8654F9FC27E7D98F53DF1B1AD9F09D686F78EB6CC020180EC3D41BD6797F6F6C9F4E6543391933BF55F4876EF9F444DF00EF5830D7789A2C8D9212AC385C41974A90878579FFFCD099F7F50C48F7123AC5E9FBDA7DDB106A00FB48A0EC266C227287C9C19B94F429ADB1668C2F553AC2CE4252700FB3BDA81CB39A956EEB010C21FACB100D0D6CCFC2842EBB6924E6BCAFBED9E8BDB9A29A2B98D4DBAB810A62B4DD9B96E755A23D479B07241BEAF0D199F5C98F1534F1D4D9A8BDC7A9694C2712316202B65B1FF5BC3FADC181811E8C102E8A9CB080BE412D87649740407B16CC3AAAE73FAD374E0DDE6A5514BF13FCA691D9C7C34FA11153FB4B0A321472413EA3B39D4ECA2E5ACC52204A942D11F0D2B2FE196DE1C36299A41FE4181E748E9010C51178546D0E914F05077F3A2B1AC641427BB1242DDC18030E9AE888B9F6295BA612648C7B0864A5B504AA07DFF9C01324D302691D3B4D0387AE039C7A456F79E3748B7BA972F784BB10D737460F8B465F284264833E8B34ECA108F8106C7A009AA4F4BA7F2AD21D7670E2941FD50004B5D9361C0EC6629B9190059A274C53D741B8DAD4F68816733950B0C75F4BCD4958F8432A9DA763BCEA4A40B0B67438F1FEA1895CEF0373D08675C7A8DD58D7ED9D6B6C972B2BAE936121Dd2=0x6B7E3BD806CAD49ECF7F4DFAB1010C6CBC07925D50AA6101026B78C37021900E4814436EB87AB5F60EB92E4F2F3E8B1F94C5511068408CD9382D00A134FAD90948A3428F8C91C92EF4562A1F5B773C311D4994750A5F547CEF7F3C9486C8198FC33306B4EF4BF90526670D81B8B0459A8766D31ECDA8632725CB2E6D304E1044F1615D169E2DE607083A68F68FAA95EC210F69472CE6AA27F8A35BD9881F64E5716F7626C38C6E3B8A1566F0B2EE11BFD06E8A57DE003D5D8946EA2A0DDCF9A907A7EEA5D11FFD68C072D69E7E364B6561CAF78457649F4D73CBB94F2078B72F0B3231CF7D888D1E53C3E04D1220ED4FE967738E98155A3466686DEBE97B40C1F15C58C52244BE47C248E8FFC6E3B475E43F47AA30D73B0277ECD14267EC4E9018AAEFE5931665D916D04A932331D65FD395BEE8E3726837175AD09AD31FCC3330E9A58115B7A867524C90A84BAEA569F11DF05DF429DC91ABCA2BA9D17F16FC1CBD1F79B5D398B0A3D479C23F8B0ADB327F973F05AEC65031A9E20F62ACC9264CAF28135637070602279554E54423D6DDA442DC5DC40AC9688EF11CD55B0DF18AE489E5C94180980A80EF15A176ABC1A7730414446342BCF7210184D46C46B0A41FC705CBC5459BC8BE4E1128AA1FA392284CABDD4448E95CAA348BE41B9EC862068D0AE1F4837E2A2C3649E5DE276B6F1DF3F4C145A1A36B6DE96A64BC6FE1c1=open('RSA.encrypt1','rb').read()c2=open('RSA.encrypt2','rb').read()m1=pow(long(c1),d1,n1)m2=pow(long(c2),d2,n2)iv='10000019'key1=base64.b16decode(str(hex(m1))[2:-1].upper())key2=base64.b16decode(str(hex(m2))[2:-1].upper())obj1=AES.new(key1,AES.MODE_ECB)withopen('AES.encryt','rb')asf1:flag1=(str(obj1.decrypt(str(f1.read()))))obj2=DES.new(key2,DES.MODE_CBC,iv)withopen('DES.encryt','rb')asf2:flag2=(str(obj2.decrypt(str(f2.read()))))flag='hbctf{'+flag1+flag2+'}'printflag

WEB

巴基斯坦-520WEB

题作者:逍遥自在 WriteUp作者:逍遥自在

题目地址:http://520.ctftools.com/

520web 实际上是非常简单的。只是一个模拟 URL 编码绕过的问题,由于出题人出题的不严谨,让一位大表哥玩出了代码执行(55555555)。

1. 先看源代码,有提示 alert(I_love_you!)

2. 就把 alert(I_love_you!)输入进去吧,发现过滤了括号

3. 过 滤 了 括 号 , url 编 码 中 就 是 %28%29 输 入alert%28I_love_you!%29(由于是面向新手的,担心他们不知道 16 进制,所以%40%41 也可以绕过,结果发现想多了,各位都是表哥表姐

Ps:这次 web 题的确没出好,只为新人了解 URL 编码。这题漏洞百出,而且 url 绕过也设计的不严密。源码都给大家,大家自己继续发掘其他姿势吧。比如|cat ls 后|catsuffer.py

源码下载:http://hbctf-1252906577.costj.myqcloud.com/src/520.tar.gz

Reverse

伊朗-520

题作者:Pcat WriteUp作者:Pcat

原题下载:http://hbctf-1252906577.costj.myqcloud.com/reverse/520.zip

这题先识别是什么语言制作的,使用 Exeinfo 显示为 C#

那么就用.Net Reflactor 等 C#逆向工具打开它,在 Form1 类中找到

其中 aGJjdGZ7 为 hbctf{的 base64 编码,中间则是字符串 s 的 32 位 md5 值,最后的 0x7d

为}Maybe God wants us to meet a few wrong people before meeting the right

one,so that when wefinally meet the person,we will know how to be

grateful.

这个字符串的 md5 值计算后为 1a117eef02eae51ca27c35d42b37defa

所以 flag 为 hbctf{1a117eef02eae51ca27c35d42b37defa}

土耳其-sayloveme

题作者:逍遥自在 WriteUp作者:逍遥自在

原题下载:http://hbctf-1252906577.costj.myqcloud.com/reverse/sayloveme.exe

直接拖 ida,f5 看源码,看左边函数栏发现一个 base64_encode 函数

然后点开 main 看到下面这些代码

第 105 行使用了 base64_encode()运算了 v3得到了 v21,在 107 行用 v21 与ZGVhcl9JX2RvX2xvdmVfeW91IQ==进行比较,相等就进去他下面的代码。直接外面讲base64 解码

将这个字符串输入进去得到

Ps:对不起各位了,出题人最近太忙了,本来上周五就该给大家的拖到了今天,对不起!

在博客中遇到的问题可以联系admin@ctftools.com

本文由Dr3@m原创发布,转载请注明来自HBCTF BLOG,转载代码(点击全选,请按"Ctrl"+"C"复制):

此项目被张贴在HBCTF。书签的permalink

文章导航

←HBCTF第三场WP

NSA工具包windows 0day验证之SMB漏洞利用→

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容

  • //Clojure入门教程: Clojure – Functional Programming for the J...
    葡萄喃喃呓语阅读 3,616评论 0 7
  • 【转载】原文地址:std::string详解作者:kieven2008 之所以抛弃char*的字符串而选用C++标...
    VAYY阅读 635评论 0 2
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,594评论 18 139
  • 借我十年 借我亡命天涯的勇敢 借我说得出口的旦旦誓言 借我孤绝如初见 借我不惧碾压的鲜活 借我生猛与莽撞不问明天 ...
    空兰山阅读 161评论 0 0
  • 等我,我很快就会回来。 等我回来,你要把这本书念给我听。 不要走。 那一句句温暖的话却刺痛人心。 几十年后,没有她...
    CallmeMAX阅读 966评论 0 2