2013年8月4日 星期日

ebCTF@OHM2013 Crypto100

Crypto100
http://ebctf.nl/files/ef60b4e178784eb4d1d6e701ac06fc09/crypto-100.txt

The first part is about "Klomp". Search it on Google is and you will find that it is a Dutch shoe.
I suppose first part should be easiest, so I tried with Caesar/ROT13 first:
http://web.forret.com/tools/rot13.asp
Although this tool has some defect(?) that makes the URL request too long and you need to restart the whole thing again and again, I like this more because it also gives you the frequency chart.
Or you may try this: http://www.braingle.com/brainteasers/codes/caesar.php
First try with ROT13 (Key = 13/N)

J lmedp nm b tuph vior niv Wfuxvrquoub. Lmedpjh bin xiece kyfk lmpwj.
Aujsfgjnqkeqs 3 nzumjee pfcsj xg lbfmuyo raf nque judy hfbh. Khjs bin tpbu tmlplpi pkk tmy Ovcifhcasxt. R ubswv pflu fo uiu dawefk rt gei ttoszbu telvjhjib. Ipmvvjl tfvf Ekkcm jffymf, frrycdlubsbp fflnvat, nqikjn hraefdvrx uou pbstvnjlt jcjmb nefl uynn gei eayspmbz kje. Toujref jye yivirtu yedzmuih, lmedpjh drw cf vfusx cvbu jd cohum kxpm iyoum bem hbhues wfecfsi.
Khj nsrmjuyfnff bcu-xpeues Xvkli dbfgx bbmn cfue okzjtrbmbp ahwsvmjuuu ax mbwnuz iyojm xzci uxv CJ gbit bot tas qjkqtuqed ffnfbu bdp pjhfkabuyfn nhdcdejdx smusg xckuttx uou lposvnylbkne bszdx. Nivh bsu rcyobcuz tqwew nirw tuuvlhuqgne qhftjwuzef txfex co jxnf szrhonjcbosvs, fm uyn xpeu cwudbb sbjyew nirw efdks nh focsfcv ahwjunoui, rlqixzwh fqjy wynfebm ew tmy dcxh bdu ntn dfwujdlei jsvbtvhv os niv cpfi sy ybf (vmhf ew) tmy tknfm dfsj.Mpdn pg jye Ioutq bmif cthtzmfs mvawcox lmpwj ax vfzwh iurlybz wxs uxv wjusvat' guvt.
Nhuvaftjznl zbtc, uiu bltgq zb bmif rjfbkne ue khj qpim tbrftfaf. Kqf Ghvnhb xfae gei kqing rt tqsoy. Zsvwdi mfrpysj fip mvrj lfgubduu bd gbtqjouj tmlpnne b acorj je cif crcmcov cp chvap cu. 
Pxv fqinjx zfdstucf ybf wrstj gawn pw cif vcal: ycTCG{62b

Looks awful. The expected rank of the frequency chart are "Etaoin shrdlu".
If you see the chart, it tells you some of the peaks are on B,F,J,U, which looks like need to shift one more character. So click on "B" on that "Pick A" (or you can restart and choose Key = -12):
I kldco ml a stog uhnq mhu Vetwuqptnta. Kldcoig ahm whdbd jxej klovi.
Ztirefimpjdpr 3 mytlidd oebri wf kaeltxn qze mptd itcx geag. Jgir ahm soat slkokoh ojj slx Nubhegbzrws. Q tarvu oekt en tht czvdej qs fdh ssnryat sdkuigiha. Holuuik seue Djjbl ieexle, eqqxbcktarao eekmuzs, mphjim gqzdecuqw tnt oarsumiks ibila mdek txmm fdh dzxrolay jid. Sntiqde ixd xhuhqst xdcylthg, kldcoig cqv be uetrw buat ic bngtl jwol hxntl adl gagtdr vedberh.
Jgi mrqlitxemee abt-wodtdr Wujkh caefw aalm betd njyisqalao zgvrulittt zw lavmty hxnil wybh twu BI fahs ans szr pijpstpdc eemeat aco oigejzatxem mgcbcdicw rltrf wbjtssw tnt konrumxkajmd arycw. Mhug art qbxnabty spvdv mhqv sttukgtpfmd pgesivtyde swedw bn iwme ryqgnmibanrur, el txm wodt bvtcaa raixdv mhqv decjr mg enbrebu zgvitmnth, qkphwyvg epix vxmedal dv slx cbwg act msm cevtickdh iruasugu nr mhu boeh rx xae (ulge dv) slx sjmel ceri.Locm of ixd Hntsp alhe bsgsyler luzvbnw klovi zw ueyvg htqkxay vwr twu vitruzs' ftus.
Mgtuzesiymk yasb, tht aksfp ya alhe qieajmd td jgi pohl saqeseze. Jpe Fgumga wezd fdh jphmf qs sprnx. Yruvch leqoxri eho luqi keftactt ac faspinti slkommd a zbnqi id bhe bqblbnu bo bguzo bt. 
Owu ephmiw yecrstbe xae vqrsi fzvm ov bhe ubzk: xbSBF{62a

Looks better but still awful. Notice that the flag is like "ebCTF{###" at the end of the message, and the plaintext is "lpGPT{62o". The letter "p" maps to both "b" and "T", which means it is probably not a monoalphabetic cipher. So I tried polyalphabetic substitution later. The popular one is Vigenere cipher:
http://sharkysoft.com/misc/vigenere/
From the previous analysis, the key "O" should make sense and you can brute force the key starting from "OOOOOO".  If you see the first sentence, it looks like the pharse "A klomp" makes more sense from the clue. Then you will get the key "WOODEN"
A klomp el a ddpy uhya nzu Vpdxmqpexus. Klompag asw xzdbo tywj kwywa.
Zttbfximatehr 3 mjdmadd zocji wq ubwltix rre made atci qfsg. Jrss shm dybl slvylgh out tdx Nfliwgbkbxk. Q tlbwm oevd ff the mandeu at xdh dcojyae cecuirsis. Howevak spef Vjjmv jwexwo, fiqxmmllarly fwkmfjt, ephusn yqzoodmqw exu gardenaks tljda mool lxmx pez dzibpday use. Knttaew ixo himhqdd yvcywdiy, klompag cbf cw ueebx tuae sd tngev kool sholl aov hsgtob wwdbpbi.
Bgi xbrditionwe amd-xgdtob Xmjks mbwfw lkme been obyidabdao kqwjultdul zw wkwety shoal wjli lwu MS gshs lxt kzr askhstand wempku sco zshwjzldywm mrmcuding sdtrq gcbtsdg uft kzxsmmxvkked acido. Mhfq bjt qmhosbtj cqndv xrrn steelytpqwe hgedswlydp cxwdw mx jome cirynmtlbfruc, om lxm hyel bvembs rathen mhbf ewcjc wh wnbcocm zggsuents, alhhwjfh wpii fyeedlv en sli mcog and nkm cpfuackor jjuadehm nr xrv toes by pae (fvhw dv) dvy kjmpv dwri.Wyde of the Zntdz bdhe mchkylpb mmzvmxx clogs ao uejfh ztqvhbq vwc dxm viebvrs' feet.
Egtfjfkiyxu zssb, eru sksqz zs also raeauwe ld jrs qghl dkrwseko. Khe Frenya wpje xdh uzief qd cqjnx. Jbvnch worgxrt oig lubs lwftlmul ac qkthines tdkoxwe s zbyaj ad bso ciblmxv to breag bt. 
Zgv wphxsx qecccute xlo wirst panm og liw ubku: ytSBQ{62k

I don't think "el" is good. So extend the key and force it to become "is" then you will get "WOODENSH", but the fourth word will become "s", extend again then you will have "WOODENSHO". And now you should try "WOODENSHOE". Don't ask me why. Then you will get the plaintext:
A klomp is a clog from the Netherlands. Klompen are whole feet clogs.
Approximately 3 million pairs of klompen are made each year. They are sold through out the Netherlands. A large part of the market is for tourist souvenirs. However some Dutch people, particularly farmers, market gardeners and gardeners still wear them for everyday use. Outside the tourist industry, klompen can be found best in local tool shops and garden centers.
The traditional all-wooden Dutch clogs have been officially accredited as safety shoes with the CE mark and can withstand almost any penetration including sharp objects and concentrated acids. They are actually safer than steelcapped protective shoes in some circumstances, as the wood cracks rather than dents in extreme accidents, allowing easy removal of the clog and not continued pressure on the toes by the (edge of) the steel nose.Some of the Dutch also consider wearing clogs as being healthy for the wearers' feet.
Interesting fact, the klomp is also related to the word sabotage. The French word for klomp is sabot. French workers who were replaced by machines throwed a klomp in the machine to break it. 
You earned yourself the first part of the flag: ebCTF{62a

If you don't want to do it by hand, or only want to use toooooools, then you can try frequency analysis:
http://smurfoncrack.com/pygenere/index.php
Choose a longer key length or you will get uninteresting key like "OSOOOOO".
Looks good? Only 1/6 of the answer.

The second part is about "Cargo". The ciphertext only contains "ADFGVX", so it should be ADFGVX cipher. (Note: this cipher has nothing to do with VXRL)
From the Wikipedia example, the columnar transposition key is also "Cargo". So I tried to decrypt with the key "Cargo" first. I used Excel to do that, but for tool illustration, there are some available:
http://practicalcryptography.com/ciphers/adfgvx-cipher/

I cannot find any online tools that can use characters other than [0-9a-z], so you cannot put some placeholder easily like in Excel. Using keysqaure "abcdefghijklmnopqrstuvwxyz0123456789" and keyword "CARGO", the "plaintext" result will become:
kzujjun06tr3t2t6abteab163a3nree1jz6n3qfliyhmpx7v6c6tuk53tz653n2unrb316we11vz3uv3akkzujj3rv6d6sz6j32s11d353tdvzun0uk68u2n6v23312t33v646nve4va36njz6n3nsab3tqfliyhmpx78unrt30etrkbteafqq8u16j6vev63khq8u164es1u216w3tll8u16ejj13kfiy8u1613386n3k346nrjetv62vz321e0b4f4q7

You can see the first few characters "kzujjun" looks like "shipping" in the clue. So now you can map back the characters by changing the key. Swap "k" and "s", "z" and "h", etc, then you will get the keyword "abcdef0zuPSlmNojqrktIvwxyHG123456789" (I put some capital letters to indicate the word is matched). The plaintext now becomes:
shipping6tr3t2t6abteab163a3nree1ph6n3qfluyzmjx7v6c6tis53th653n2inrb316we11vh3iv3asshipp3rv6d6kh6p32k11d353tdvhingis68i2n6v23312t33v646nve4va36nph6n3nkab3tqfluyzmjx78inrt3getrsbteafqq8i16p6vev63szq8i164ek1i216w3tll8i16epp13sfuy8i1613386n3s346nrpetv62vh321egb4f4q7

Alright. The next word is "order". Do the tedious things again and you will have the keyword "abct3f0zuPSlmN6jqDkRIvwxyHG12E45O789". Yeah why don't you just use Excel to build a lookup table. The plaintext is now:

shippingorder2roabr3ab1oeaend331phoneqfluyzmjx7vocoris5erho5en2indbe1ow311vheiveasshippedvotokhope2k11te5ertvhingiso8i2nov2ee12reevo4onv34vaeonphonenkaberqfluyzmjx78indreg3rdsbr3afqq8i1opov3voeszq8i1o43k1i21owerll8i1o3pp1esfuy8i1o1ee8onese4ondp3rvo2vhe213gb4f4q7

Then you have "2roabr3ab1oeaend331phoneqfluyzmjx7" for "frombrambloemendaalphone0123456789". The keyword will become "MBctA1q53PS26Nu70DkRIvw84HGLFEyzO9xj" with plaintext

shippingorderfrombrambloemendaalphone0123456789vocoriszerhozenfindbelowallvheivemsshippedvotokhopefklltezertvhingisoxifnovfeelfreevoyonvayvmeonphonenkmber0123456789xindregardsbram100xilopovavoes50xiloyakliflower22xiloapples134xiloleexoneseyondparvofvheflagby1y09

Sounds good. Now the numbers should be correct. And then "vocoriszerhozen" for "tojorisverhoven". The keyword becomes "MBJzA1q53PS26Nu70DkRITw84HGLFEyVO9xc" and plaintext is

shippingorderfrombrambloemendaalphone0123456789tojorisverhovenfindbelowalltheitemsshippedtozokhopefkllzeverzthingisoxifnotfeelfreetoyontaytmeonphonenkmber0123456789xindregardsbram100xilopotatoes50xiloyakliflower22xiloapples134xiloleexoneseyondpartoftheflagby1y09

Finally we use up all the clues. The placeholders are the small letters in the keyword, which are "zqukwyxc". Replace them to symbols like "!@#$%^~*" to have a better view (Blogger doesn't like ampersand, so I use tilde here)

shippingorderfrombrambloemendaalphone0123456789tojorisverhovenfindbelo%alltheitemsshippedto!o$hopef$ll!ever!thingiso~ifnotfeelfreeto^onta^tmeonphonen$mber0123456789~indregardsbram100~ilopotatoes50~ilo^a$liflo%er22~iloapples134~ilolee~onese^ondpartoftheflagb^1^09

and the keyword becomes "MBJ!A1@53PS26N#70D$RIT%84HGLFE^VO9~*". Then you can interpret the remaining message by yourself:

find belo% all the items shipped to !o$ 
hopef$ll! ever!thing is o~ 
if not feel free to ^onta^t me on phone n$mber 0123456789 
~ind regards bram 
100 ~ilo potatoes 
50 ~ilo ^a$li flo%er 
22 ~ilo apples 
134 ~ilo lee~ one 
se^ond part of the flag b^1^09

% = w, $ = u, ! = y, ~ = k, ^ = c
Well, q, x and z are still remain unknown. But who cares, actually you just care about ^ = c:

second part of the flag bc1c09

Impatient readers now found that this is just the second part. 4 moar Roar.

The third part is just base64 decode.
But well, life is not that easy. After you decode, the file looks corrupted:
Well. Some funny repeated string. Isn't that looks like JPEG quantization table (? yea, xored.):

So let's just do some dirty tricks to prove this. Pick the first 16 bytes of the file and xor it with the first 16 bytes of a random JPEG file:
"FFD8FFE000104A464946000101010060" XOR "8BAD938970643F2A203674746D68703C" = "74756c697074756c697074756c69705c"
So the string "74756c6970" is repeating. You may ask why the last byte is "5c" but not "74", smart readers should know the reason. Now we get the XOR key is "tulip", and decode it will get a tulip image with the word "Third part of the flag: 6bb166".

The fourth part is checking your eye sight:
thhneu hpeitr eafnw frleo otata uoghb rfirf ttseo
Can't see shit? How about this:
thhneu 
hpeitr 
eafnw 
frleo 
otata 
uoghb 
rfirf 
ttseo
Still cannot see? Then you should come and learn Chinese, maybe you will get some extra insight.
Plaintext: the fourth part of the flag is nine three two a b four

Fifth part:
S fbnnbh niwzsed nstd oj rbqdiuhdqw iw zgsz zgd Hdzgdqyshtw ydusyiadt zgd mwd br fshhsoiw sht bzgdq qdfqdszibhsy wbrz tqmuw. Sffbqtihu zgd ysp shj mwd br tqmuw iw wziyy iyydusy, omz zgdqd iw s zbydqshfj kbyifj fsyydt udtbbuodydit rbq shj wbrz tqmuw. Zgiw iw s wdz br umitdyihdw zdyyihu kmoyif kqbwdfmzbqw mhtdq pgifg fiqfmnwzshfdw brrdhtdqw wgbmyt hbz od kqbwdfmzdt. Sffbqtihu zb fmqqdhz udtbbuodydit zgd kbwwdwwibh br s nslinmn snbmhz br rixd uqsnw fshhsoiw rbq kdqwbhsy mwd iw hbz kqbwdfmzdt. Fmyzixszibh iw zqdszdt ih s winiysq psj. Fmyzixszibh br 5 kyshzw bq ydww iw mwmsyyj hbz kqbwdfmzdt pgdh zgdj sqd qdhbmhfdt oj zgd fmyzixszbq.  Wb ir jbm fbnd zb zgd Hdzgdqyshtw sht pshz zb zqj wbnd qdfqdszibhsy mwd br wbrz tqmuw, odpsqd zgsz iz iw hbz ydusy. Zgd rirzg ksqz rbq zgd rysu iw so1rtd

See, the last sentence, "The fifth part ??? the flag is ??1???". Looks like a cryptogram. So if you want toooooools, then this one is goooooood:
http://www.blisstonia.com/software/WebDecrypto/index.php
Almost instantly solved. If you want to do it by hand, here is it. First change all letters to lower case for indicator purpose:
s fbnnbh niwzsed nstd oj rbqdiuhdqw iw zgsz zgd hdzgdqyshtw ydusyiadt zgd mwd br fshhsoiw sht bzgdq qdfqdszibhsy wbrz tqmuw. sffbqtihu zgd ysp shj mwd br tqmuw iw wziyy iyydusy, omz zgdqd iw s zbydqshfj kbyifj fsyydt udtbbuodydit rbq shj wbrz tqmuw. zgiw iw s wdz br umitdyihdw zdyyihu kmoyif kqbwdfmzbqw mhtdq pgifg fiqfmnwzshfdw brrdhtdqw wgbmyt hbz od kqbwdfmzdt. sffbqtihu zb fmqqdhz udtbbuodydit zgd kbwwdwwibh br s nslinmn snbmhz br rixd uqsnw fshhsoiw rbq kdqwbhsy mwd iw hbz kqbwdfmzdt. fmyzixszibh iw zqdszdt ih s winiysq psj. fmyzixszibh br 5 kyshzw bq ydww iw mwmsyyj hbz kqbwdfmzdt pgdh zgdj sqd qdhbmhfdt oj zgd fmyzixszbq.  wb ir jbm fbnd zb zgd hdzgdqyshtw sht pshz zb zqj wbnd qdfqdszibhsy mwd br wbrz tqmuw, odpsqd zgsz iz iw hbz ydusy. zgd rirzg ksqz rbq zgd rysu iw so1rtd

(Case sensitive) Replace z = T, g = H, d = E, r = F, i = I, k = P, s = A, q = R:
A fbnnbh nIwTAeE nAtE oj FbREIuhERw Iw THAT THE hETHERyAhtw yEuAyIaEt THE mwE bF fAhhAoIw Aht bTHER REfREATIbhAy wbFT tRmuw. AffbRtIhu THE yAp Ahj mwE bF tRmuw Iw wTIyy IyyEuAy, omT THERE Iw A TbyERAhfj PbyIfj fAyyEt uEtbbuoEyEIt FbR Ahj wbFT tRmuw. THIw Iw A wET bF umItEyIhEw TEyyIhu PmoyIf PRbwEfmTbRw mhtER pHIfH fIRfmnwTAhfEw bFFEhtERw wHbmyt hbT oE PRbwEfmTEt. AffbRtIhu Tb fmRREhT uEtbbuoEyEIt THE PbwwEwwIbh bF A nAlInmn AnbmhT bF FIxE uRAnw fAhhAoIw FbR PERwbhAy mwE Iw hbT PRbwEfmTEt. fmyTIxATIbh Iw TREATEt Ih A wInIyAR pAj. fmyTIxATIbh bF 5 PyAhTw bR yEww Iw mwmAyyj hbT PRbwEfmTEt pHEh THEj ARE REhbmhfEt oj THE fmyTIxATbR.  wb IF jbm fbnE Tb THE hETHERyAhtw Aht pAhT Tb TRj wbnE REfREATIbhAy mwE bF wbFT tRmuw, oEpARE THAT IT Iw hbT yEuAy. THE FIFTH PART FbR THE FyAu Iw Ao1FtE

Looks good. Now "FbR" should be "FOR" unless you think "FUR" makes more sense. So replace b = O, y = L, u = G, w = S:
A fOnnOh nISTAeE nAtE oj FOREIGhERS IS THAT THE hETHERLAhtS LEGALIaEt THE mSE OF fAhhAoIS Aht OTHER REfREATIOhAL SOFT tRmGS. AffORtIhG THE LAp Ahj mSE OF tRmGS IS STILL ILLEGAL, omT THERE IS A TOLERAhfj POLIfj fALLEt GEtOOGoELEIt FOR Ahj SOFT tRmGS. THIS IS A SET OF GmItELIhES TELLIhG PmoLIf PROSEfmTORS mhtER pHIfH fIRfmnSTAhfES OFFEhtERS SHOmLt hOT oE PROSEfmTEt. AffORtIhG TO fmRREhT GEtOOGoELEIt THE POSSESSIOh OF A nAlInmn AnOmhT OF FIxE GRAnS fAhhAoIS FOR PERSOhAL mSE IS hOT PROSEfmTEt. fmLTIxATIOh IS TREATEt Ih A SInILAR pAj. fmLTIxATIOh OF 5 PLAhTS OR LESS IS mSmALLj hOT PROSEfmTEt pHEh THEj ARE REhOmhfEt oj THE fmLTIxATOR.  SO IF jOm fOnE TO THE hETHERLAhtS Aht pAhT TO TRj SOnE REfREATIOhAL mSE OF SOFT tRmGS, oEpARE THAT IT IS hOT LEGAL. THE FIFTH PART FOR THE FLAG IS Ao1FtE

The flag is A@1F~E, and you know they should be B, C or D just need to brute force 6 times, yeah.
Well, go and find some word that has "o" or "t". For "o", "oj", "omT", "oE", and "oEpARE" are short and looks trivial. I suppose this message is English, so we should have "BE" instead of "DE". Replace o to B and see what happen:
A fOnnOh nISTAeE nAtE Bj FOREIGhERS IS THAT THE hETHERLAhtS LEGALIaEt THE mSE OF fAhhABIS Aht OTHER REfREATIOhAL SOFT tRmGS. AffORtIhG THE LAp Ahj mSE OF tRmGS IS STILL ILLEGAL, BmT THERE IS A TOLERAhfj POLIfj fALLEt GEtOOGBELEIt FOR Ahj SOFT tRmGS. THIS IS A SET OF GmItELIhES TELLIhG PmBLIf PROSEfmTORS mhtER pHIfH fIRfmnSTAhfES OFFEhtERS SHOmLt hOT BE PROSEfmTEt. AffORtIhG TO fmRREhT GEtOOGBELEIt THE POSSESSIOh OF A nAlInmn AnOmhT OF FIxE GRAnS fAhhABIS FOR PERSOhAL mSE IS hOT PROSEfmTEt. fmLTIxATIOh IS TREATEt Ih A SInILAR pAj. fmLTIxATIOh OF 5 PLAhTS OR LESS IS mSmALLj hOT PROSEfmTEt pHEh THEj ARE REhOmhfEt Bj THE fmLTIxATOR.  SO IF jOm fOnE TO THE hETHERLAhtS Aht pAhT TO TRj SOnE REfREATIOhAL mSE OF SOFT tRmGS, BEpARE THAT IT IS hOT LEGAL. THE FIFTH PART FOR THE FLAG IS AB1FtE

Now find some good "t"s. "nAtE", "hETHERLAhtS", "Aht", "tRmGS", "OFFEhtERS", "SHOmLt", "TREATEt". Well, it's "D", unless "Treatec" makes sense to you. Now replace it:
A fOnnOh nISTAeE nADE Bj FOREIGhERS IS THAT THE hETHERLAhDS LEGALIaED THE mSE OF fAhhABIS AhD OTHER REfREATIOhAL SOFT DRmGS. AffORDIhG THE LAp Ahj mSE OF DRmGS IS STILL ILLEGAL, BmT THERE IS A TOLERAhfj POLIfj fALLED GEDOOGBELEID FOR Ahj SOFT DRmGS. THIS IS A SET OF GmIDELIhES TELLIhG PmBLIf PROSEfmTORS mhDER pHIfH fIRfmnSTAhfES OFFEhDERS SHOmLD hOT BE PROSEfmTED. AffORDIhG TO fmRREhT GEDOOGBELEID THE POSSESSIOh OF A nAlInmn AnOmhT OF FIxE GRAnS fAhhABIS FOR PERSOhAL mSE IS hOT PROSEfmTED. fmLTIxATIOh IS TREATED Ih A SInILAR pAj. fmLTIxATIOh OF 5 PLAhTS OR LESS IS mSmALLj hOT PROSEfmTED pHEh THEj ARE REhOmhfED Bj THE fmLTIxATOR.  SO IF jOm fOnE TO THE hETHERLAhDS AhD pAhT TO TRj SOnE REfREATIOhAL mSE OF SOFT DRmGS, BEpARE THAT IT IS hOT LEGAL. THE FIFTH PART FOR THE FLAG IS AB1FDE

Sixth part is claimed to be easy. So try to use Caesar/ROT13.
Try several keys you will get this:
The Delta Works is a series of construction projects in the southwest of the Netherlands to protect a large area of land around the Rhine-Meuse-Scheldt delta from the sea. The works consist of dams, sluices, locks, dikes, levees, and storm surge barriers. The aim of the dams, sluices, and storm surge barriers was to shorten the Dutch coastline, thus reducing the number of dikes that had to be raised.
Along with the Zuiderzee Works, Delta Works have been declared one of the Seven Wonders of the Modern World by the American Society of Civil Engineers. The last part of the flag is: one-five-f-three-four-}

Well. If you want to use an ox cleaver to kill a chicken, then use Decrypto.

Finally, the flag is ebCTF{62abc1c096bb166932ab4ab1fde15f34}


沒有留言:

張貼留言