From f2bd63541941edd747fb22c3dad56e0a0b8dc577 Mon Sep 17 00:00:00 2001 From: six <51x@keemail.me> Date: Thu, 25 Aug 2022 22:04:04 +0200 Subject: [PATCH] Day1 Challenges --- challenges/vol9_rnd1/Day1/00_Entry/README.md | 5 + .../vol9_rnd1/Day1/01_Illusion/.README.md.swp | Bin 0 -> 12288 bytes .../vol9_rnd1/Day1/01_Illusion/README.md | 5 + .../vol9_rnd1/Day1/01_Illusion/illusion.sol | 14 ++ .../Day1/02_Metaverse_HODLer/HODL_GEN.sol | 16 ++ .../Day1/02_Metaverse_HODLer/I_HODL_IT.sol | 7 + .../Day1/02_Metaverse_HODLer/README.md | 7 + .../02_Metaverse_HODLer/natoshi_.........jpeg | Bin 0 -> 77083 bytes .../vol9_rnd1/Day1/03_SubContract/README.md | 17 ++ challenges/vol9_rnd1/Day1/04_Asinve/asinev.py | 11 + .../vol9_rnd1/Day1/04_Asinve/output.txt | 2 + .../vol9_rnd1/Day1/05_Mazlos/mazlos.sage | 19 ++ .../vol9_rnd1/Day1/05_Mazlos/output.txt | 111 +++++++++ challenges/vol9_rnd1/Day1/06_Ratato/README.md | 1 + .../vol9_rnd1/Day1/06_Ratato/output.txt | 225 ++++++++++++++++++ challenges/vol9_rnd1/Day1/06_Ratato/ratoto.py | 34 +++ .../vol9_rnd1/Day1/07_Tifany/output.txt | 2 + challenges/vol9_rnd1/Day1/07_Tifany/tifany.py | 27 +++ challenges/vol9_rnd1/Day1/README.md | 73 +++++- 19 files changed, 575 insertions(+), 1 deletion(-) create mode 100644 challenges/vol9_rnd1/Day1/00_Entry/README.md create mode 100644 challenges/vol9_rnd1/Day1/01_Illusion/.README.md.swp create mode 100644 challenges/vol9_rnd1/Day1/01_Illusion/README.md create mode 100644 challenges/vol9_rnd1/Day1/01_Illusion/illusion.sol create mode 100644 challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/HODL_GEN.sol create mode 100644 challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/I_HODL_IT.sol create mode 100644 challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/README.md create mode 100644 challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/natoshi_.........jpeg create mode 100644 challenges/vol9_rnd1/Day1/03_SubContract/README.md create mode 100644 challenges/vol9_rnd1/Day1/04_Asinve/asinev.py create mode 100644 challenges/vol9_rnd1/Day1/04_Asinve/output.txt create mode 100644 challenges/vol9_rnd1/Day1/05_Mazlos/mazlos.sage create mode 100644 challenges/vol9_rnd1/Day1/05_Mazlos/output.txt create mode 100644 challenges/vol9_rnd1/Day1/06_Ratato/README.md create mode 100644 challenges/vol9_rnd1/Day1/06_Ratato/output.txt create mode 100644 challenges/vol9_rnd1/Day1/06_Ratato/ratoto.py create mode 100644 challenges/vol9_rnd1/Day1/07_Tifany/output.txt create mode 100644 challenges/vol9_rnd1/Day1/07_Tifany/tifany.py diff --git a/challenges/vol9_rnd1/Day1/00_Entry/README.md b/challenges/vol9_rnd1/Day1/00_Entry/README.md new file mode 100644 index 0000000..f0334f3 --- /dev/null +++ b/challenges/vol9_rnd1/Day1/00_Entry/README.md @@ -0,0 +1,5 @@ +## Entry + +Welcome to a decentralized CTF! All you need to get your first 128 points is to register in the smart contract and use your skills to sign! + +PK: 0x206863824a9e6b6018bd25eb36ae69b7140963ed48f428339dfb52b09d6aa30d diff --git a/challenges/vol9_rnd1/Day1/01_Illusion/.README.md.swp b/challenges/vol9_rnd1/Day1/01_Illusion/.README.md.swp new file mode 100644 index 0000000000000000000000000000000000000000..8d3ad6fe20d427559b96b5e1977df28bcdb9e657 GIT binary patch literal 12288 zcmeI&O-sWt7zgldpf^$62Qcc{^=)IF7a4QH4ny$mI?^<8#lDfIx?WV!59J5&BkA1~ zyNd^RR{nv9kmN~9ez%e*uy3X_>USMt+72Pl@g_eTzqj5xZBj(bdUkC~oHX>7dTrjL zInd%3=UNV}JZ6$JmzecIW*{%r@=AOHafKmY;|fB*y_0D*rdpz{`aGIwe>_u6Rs){nj! zqJsbgAOHafKmY;|fB*y_009U<;13Eg^R~XXO~|>4`u%_P|Nm*mA0}Q+yqKuhD-&oC zfB*y_009U<00Izz00bZa0SJ&$7%EW|$JAa916L0E0q@%$b3N(Vy`FFfp%V=K(C4-c zSs-o3TtY6hMCd3H1$|gBO{=V=g%C6)Gav6I1+4S0(o33-2stTmS$7 literal 0 HcmV?d00001 diff --git a/challenges/vol9_rnd1/Day1/01_Illusion/README.md b/challenges/vol9_rnd1/Day1/01_Illusion/README.md new file mode 100644 index 0000000..bc13a67 --- /dev/null +++ b/challenges/vol9_rnd1/Day1/01_Illusion/README.md @@ -0,0 +1,5 @@ +# Illusion + +Sometimes what you see is far from reality. Can you solve this inaccurateness of our interpretation of reality? + +Address: 0x9b2f75bc503a23f3044e27d1b98d8c0fdabf0aa2 diff --git a/challenges/vol9_rnd1/Day1/01_Illusion/illusion.sol b/challenges/vol9_rnd1/Day1/01_Illusion/illusion.sol new file mode 100644 index 0000000..652e44a --- /dev/null +++ b/challenges/vol9_rnd1/Day1/01_Illusion/illusion.sol @@ -0,0 +1,14 @@ +// SPDX-License-Identifier: MIT +pragma solidity = 0.8.16; + +contract MagikTrik { + constructor (bytes memory x) public { + assembly{ + return (0xc0, 0x19e) + } + } + + function flag() public returns (string memory) { + return "CCTF{0x2311157248adee133b378f46b30050bb4c7508e6bc9043eae5e6566f5fe8595e}"; + } +} diff --git a/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/HODL_GEN.sol b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/HODL_GEN.sol new file mode 100644 index 0000000..4d3b0e1 --- /dev/null +++ b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/HODL_GEN.sol @@ -0,0 +1,16 @@ +pragma solidity >=0.8.13 <0.9.0; + +contract HODL_GEN { + + function collision_troll(string memory _text, string memory _anotherText) + public + pure + returns (bytes32) + { + return keccak256(abi.encodePacked(_text, _anotherText)); + } + + function hasher(string memory _text) public pure returns (bytes32) { + return keccak256(abi.encode(_text)); + } +} diff --git a/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/I_HODL_IT.sol b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/I_HODL_IT.sol new file mode 100644 index 0000000..bbc95ed --- /dev/null +++ b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/I_HODL_IT.sol @@ -0,0 +1,7 @@ +contract I_HODL_IT { + bytes32 public val = 0xe1dbfec2e4b2dea9b7199c38ab5a74ad5d186373c2c9c3b8a075da831e652189; + + function I_HODL_THE_FLAG(string memory _flag) public view returns (bool) { + return keccak256(abi.encodePacked(_flag)) == val; + } +} diff --git a/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/README.md b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/README.md new file mode 100644 index 0000000..ddfe057 --- /dev/null +++ b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/README.md @@ -0,0 +1,7 @@ +# Metaverse HODLer + +Natoshi Sakamoto left this picture clue... Maybe you can figure out the pass for it and solve the clue. + +This time you need to search in the Metaverse for the solution. + +Note: this time you are looking for the private key without the CCTF{} format (just the plain key is the solution for the correct signature). diff --git a/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/natoshi_.........jpeg b/challenges/vol9_rnd1/Day1/02_Metaverse_HODLer/natoshi_.........jpeg new file mode 100644 index 0000000000000000000000000000000000000000..cda3811076d6458820bd6123339076583a9603b5 GIT binary patch literal 77083 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 1) + pubkey.append(r * p + s) + return p, pubkey + +def encrypt(msg, pubkey, size, nbit): + bmsg = bin(bytes_to_long(msg))[2:] + ENC, ERR = [], [getRandomNBitInteger(nbit >> 2) for _ in range(len(pubkey))] + I = [[getRandomRange(0, l) for _ in range(size)] for _ in range(len(bmsg))] + J = I.copy() + shuffle(J) + for i in range(len(bmsg)): + BSE = [pubkey[_] for _ in I[i]] + NSE = [ERR[_] for _ in J[i]] + ENC.append((p - 1337) * sum(BSE) + 31337 * sum(NSE) + int(bmsg[i])) + return ENC + +nbit, l, size = 128, 19, 5 + +p, pubkey = keygen(nbit, l) +ENC = encrypt(flag, pubkey, size, nbit) +print(f'p = SECRET') +print(f'pubkey = CENSORED') +print(f'ENC = {ENC}') \ No newline at end of file diff --git a/challenges/vol9_rnd1/Day1/07_Tifany/output.txt b/challenges/vol9_rnd1/Day1/07_Tifany/output.txt new file mode 100644 index 0000000..0eedc81 --- /dev/null +++ b/challenges/vol9_rnd1/Day1/07_Tifany/output.txt @@ -0,0 +1,2 @@ +PUBKEYS = [(64, 5097817878965528130491999342033509383671964377259616798715086934670476350727067457961522894098176448758455154790088591291492140436888345341524809013526529, 2719656862057675929701181954473487234560053809504182870159883838830483677151615636749895148757512803297431604023949928845798307274620135893628483730370165), (64, 7060901523045984042726080087295157550812603117014135470810146736924359487877594696955935359761087723618432268625961633499242025342993080599272255219826689, 4236820856373471395975112418570159264049442285065614702317560670715324826831495654542690903261317999410969993239143341056856173969712835598894202769388189), (64, 5886668253670710710014305751042288929482573229210648408256360809410689379782338231757686802389194096652696623501426797782671696086916718671567800963694593, 677368525715501885225550495329044026746223906252509513138088716119365842650677326813318891234654722631402944420811717518465312218123608617232162852424170), (64, 6114696543898743304257013154635488204390945532201859491053616049905885027429927049234156928074388068529709328066036749070246579808959041037459892329250817, 1021087898515549606893085024245043948068246289952806903035703154407844021232228744683154236268344854762246167228090127959207385970329548719938322873853549)] +ENC = [1286907403972341066242889039669746312604706856103274344009103676324327972578841290574873287897323982618297132672952263919380020818444548599642494468594665, 1838915271351575639601282561214303786600921537529533284271544284380414309392526991211419383097531042880836480777627616721634975396626109131764273669068589, 1895763364891005946887146248268886690926567718566562720182936733403281150463031165139138495033281798780786067518579648144178418947406635436838517465170080, 865258808401079606933739673880885312400885776434889955425887632635573328068544052188598492574428785517787870375464753706677205587063007358817267526317094] diff --git a/challenges/vol9_rnd1/Day1/07_Tifany/tifany.py b/challenges/vol9_rnd1/Day1/07_Tifany/tifany.py new file mode 100644 index 0000000..c581dfa --- /dev/null +++ b/challenges/vol9_rnd1/Day1/07_Tifany/tifany.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python3 + +from Crypto.Util.number import * +from secret import PUBKEYS, flag + +def keygen(nbit, k): # Public key generation function + while True: + p, q = [2 ** k * getRandomNBitInteger(nbit - k) + 1 for _ in '01'] + if isPrime(p) and isPrime(q): + while True: + y = getRandomRange(2, p * q) + if pow(y, (p - 1) // 2, p) == p - 1 and pow(y, (q - 1) // 2, q) == q - 1: + pubkey = k, p * q, y + return pubkey + +def encrypt(pubkey, m): + k, n, y = pubkey + assert k >= len(bin(m)[2:]) + x = getRandomRange(2, n) + return pow(y, m, n) * pow(x, 2 ** k, n) % n + +flag = flag.lstrip(b'CCTF{').rstrip(b'}') +flag = [bytes_to_long(flag[i*8:i*8 + 8]) for i in range(4)] +print(f'PUBKEYS = {PUBKEYS}') + +ENC = [encrypt(PUBKEYS[_], flag[_]) for _ in range(4)] +print(f'ENC = {ENC}') \ No newline at end of file diff --git a/challenges/vol9_rnd1/Day1/README.md b/challenges/vol9_rnd1/Day1/README.md index 1f03335..0f060fa 100644 --- a/challenges/vol9_rnd1/Day1/README.md +++ b/challenges/vol9_rnd1/Day1/README.md @@ -1 +1,72 @@ -To be added on Aug 26. 10:00 GMT +8 +## CCTF vol9 Info +Max points = 4096 + +Registration => https://polygonscan.com/address/0x36a1424da63a50627863d8f65c0669da7347814a + +How to and rules => https://cryptoctf.org/2022/08/22/decentralized-ctf/ + +If you have not found a private key, but a standard string, use one of this API: + http://209.250.246.26:6789/get?flag=CCTF{test} + fyord7wc4lzrgp4g4v2z7nhftoymolmmhmuixgkmnvo6f2bvlqdtjjid.onion + +Start date, Day 0: 2022 August 25, 10:00, Singapore Time - UTC/GMT +8 + +Release of Day 1 challenges: Start date: 2022 August 26, 10:00, Singapore Time - UTC/GMT +8 + +Finish date: 2022 August 26., 16:00, Singapore Time - UTC/GMT +8 + +## Challenges + +| Name | Points | Level | Author | Required skills | +|-----------------|----------|-----------------|-----------------|----------------------------------------------------| +|Entry | 128 | Sminem | six and silur | Base hacking skills | +|Illusion | 512 | HODLer | six | Solidity hacking, solidity debugging | +|Metaverse HODLer | 512 | HODLer | six | Solidity hacking | +|SubContract | 1024 | Natoshi | six | Substrate hacking, ink! hacking, web hacking | +|Asinve | 128 | Sminem | factoreal | Cryptography hacking, Math, RSA | +|Mazlos | 256 | Crypto Wojak | factoreal | Cryptography hacking, Math, Factorization | +|Ratato | 512 | HODLer | factoreal | Cryptography hacking, Math, SageMath, Encryption | +|Tifany | 1024 | Natoshi | factoreal | Cryptography hacking, Math, SageMath, Encryption | + +## Challenge signers + + Name ENTRY + flagID 0 + Point 128 + Recovered signer: 0x882b74a4a2F17762b48Da013dD8Bd796D8c2C7fa + + Name ILLUSION + flagID 1 + Point 512 + Recovered signer: 0x6B187213799bde630f134af7ABaC6486F1b9a3e5 + + Name Metaverse HODLer (Released on Friday) + flagID 2 + Point 512 + Recovered signer: 0x58Bab2f728dc4FC227A4C38CaB2ec93B73B4E828 + + Name SubContract (Released on Friday) + flagID 3 + Point 1024 + Recovered signer: 0x1e7b826154c3529F6A95D01fdD78a67a60c63Af5 + + Name Asinve + flagID 4 + Point 128 + Recovered signer: 0x5282162D07DE30C4Fc17b50ea4223aFdAFB94fe1 + + Name Mazlos + flagID 5 + Point 256 + Recovered signer: 0x3Aa773c173a816eF0ab31C4e94Cdb9395C6F38BD + + Name Ratato (released on Friday) + flagID 6 + Point 512 + Recovered signer: 0x1d2170D349d8b8703d8f375cFCE74E6330E3663E + + Name Tifany + flagID 7 + Point 1024 + Recovered signer: 0x51bBDEF4b96be66b90837E778eCDD2AA4aBe4F83 +