{"id":316,"date":"2017-12-11T23:53:10","date_gmt":"2017-12-11T14:53:10","guid":{"rendered":"http:\/\/emeth.jp\/diary\/?p=316"},"modified":"2024-08-10T14:40:04","modified_gmt":"2024-08-10T05:40:04","slug":"seccon-2017-online-ctf-writeup","status":"publish","type":"post","link":"https:\/\/emeth.jp\/diary\/2017\/12\/seccon-2017-online-ctf-writeup\/","title":{"rendered":"SECCON 2017 Online CTF Writeup #seccon"},"content":{"rendered":"<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"ja\" dir=\"ltr\">\u3042\u3068\u306fVigenere3d\u3068Powerful Shell\u3068Simon\u3092\u89e3\u3044\u305f\u3051\u3069\u4eba\u306b\u3088\u3063\u3066\u89e3\u6cd5\u304c\u5909\u308f\u308b\u3088\u3046\u306a\u554f\u984c\u3058\u3083\u306a\u3044\u3057Writeup\u3092\u66f8\u304f\u307e\u3067\u3082\u306a\u304b\u308d\u3046\u304b\u3002<\/p>\n<p>&mdash; \u3066\u304d\u3068\u3046 (@tkito) <a href=\"https:\/\/twitter.com\/tkito\/status\/939851799896276993?ref_src=twsrc%5Etfw\">December 10, 2017<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p>\u30b9\u30ad\u30eb\u3082\u6587\u7ae0\u529b\u3082\u306a\u3044\u5974\u304c\u4f55\u5049\u305d\u3046\u306b\u8a00\u3063\u3066\u3093\u306e\uff1f\uff08\u81ea\u5206\u3067\u3059\uff09\u3068\u601d\u3063\u305f\u306e\u3067\u66f8\u304f\u3002<\/p>\n<p>\u3068\u3042\u308b\u30c1\u30fc\u30e0\u306b\u53c2\u52a0\u3057\u30664\u554f\u89e3\u3044\u305f\u3002Submit\u3057\u305f\u306e\u306f\u4e0a\u306e3\u554f\u3067\u8a08500\u70b9\u3002<\/p>\n<p><!--more--><\/p>\n<h2>Vigenere3d (Crypto 100)<\/h2>\n<p><a href=\"https:\/\/ja.wikipedia.org\/wiki\/%E3%83%B4%E3%82%A3%E3%82%B8%E3%83%A5%E3%83%8D%E3%83%AB%E6%9A%97%E5%8F%B7\" target=\"_blank\" rel=\"noopener noreferrer\">\u30f4\u30a3\u30b8\u30e5\u30cd\u30eb\u6697\u53f7<\/a>\u306e3\u6b21\u5143\u7248\u3002<br \/>\n2\u3064\u76ee\u306e\u9375\u3092\u4f7f\u3063\u3066\u30f4\u30a3\u30b8\u30e5\u30cd\u30eb\u6697\u53f7\u306e\u8868\u30923\u6b21\u5143\u65b9\u5411\u306b\u62e1\u5f35\u3057\u3066\u3044\u308b\u3002<\/p>\n<p>\u30f4\u30a3\u30b8\u30e5\u30cd\u30eb\u6697\u53f7\u306e\u5f37\u3055\u306f\u9375\u306e\u9577\u3055\uff08\uff1d\u5468\u671f\uff09\u306b\u4f9d\u5b58\u3057\u3066\u3044\u308b\u3002<br \/>\nVigenere3d\u306f\u3001\u9375\u30922\u3064\u7528\u3044\u3066\u3044\u308b\u305f\u3081\u3001\u5468\u671f\u306f2\u3064\u306e\u9375\u306e\u9577\u3055\u306e\u6700\u5c0f\u516c\u500d\u6570\u3068\u306a\u308b\u3002<br \/>\n\u554f\u984c\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u306f2\u3064\u306e\u9375\u304c\u540c\u3058\u9577\u3055\u306b\u306a\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u62e1\u5f35\u3057\u305f\u610f\u5473\u304c\u307e\u3063\u305f\u304f\u306a\u3044\u2026<\/p>\n<p>\u3055\u3066\u3001\u6697\u53f7\u30d7\u30ed\u30bb\u30b9\u3092\u898b\u3066\u307f\u308b\u3068\u3001\u5e73\u65871\u6587\u5b57\u306b\u5bfe\u3057\u3066\u30012\u3064\u306e\u9375\u306es\u306b\u304a\u3051\u308b\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u306e\u548c\u3067\u6697\u53f7\u6587\u304c\u6c7a\u307e\u308b\u3053\u3068\u304c\u308f\u304b\u308b\u3002<br \/>\nt[x]\u306e\u30c7\u30fc\u30bf\u3092\u8868\u306b\u3057\u3066\u307f\u308b\u3068\u308f\u304b\u308a\u3084\u3059\u3044\u3002\u4ee5\u4e0b\u306f\u5e73\u6587\u304c&#8217;S&#8217;\u306e\u5834\u5408\u3002<\/p>\n<p><a href=\"https:\/\/emeth.jp\/diary\/wp-content\/uploads\/2017\/12\/vigenere3d_1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-321\" src=\"https:\/\/emeth.jp\/diary\/wp-content\/uploads\/2017\/12\/vigenere3d_1.png\" alt=\"\" width=\"1205\" height=\"1145\" \/><\/a><\/p>\n<p>\u3053\u306e\u554f\u984c\u3067\u306f\u30012\u3064\u76ee\u306e\u9375\u306f1\u3064\u76ee\u306e\u9375\u3092\u9006\u9806\u306b\u3057\u305f\u3082\u306e\u306b\u3057\u3066\u3044\u308b\u3002<br \/>\n\u3053\u306e\u305f\u3081\u30011\u3064\u76ee\u306e\u9375\u30682\u3064\u76ee\u306e\u9375\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u306e\u548c\u3001\u3068\u3044\u3046\u306e\u306f\u3001\u5f8c\u308d\u534a\u5206\u306e8\u6587\u5b57\u76ee\u304b\u3089\u306f1\uff5e7\u6587\u5b57\u76ee\u306e\u9806\u756a\u3092\u9006\u306b\u3057\u305f\u3082\u306e\u3068\u306a\u308a\u3001\u524d\u534a\u5206\u306e7\u6587\u5b57\u5206\u3060\u3051\u9375\uff08\u306e\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u306e\u548c\uff09\u304c\u308f\u304b\u308c\u3070\u5168\u90e8\u308f\u304b\u308b\u3053\u3068\u306b\u306a\u308b\u3002<br \/>\n7\u6587\u5b57\u5206\u306f\u5e73\u6587\u3068\u6697\u53f7\u6587\u306e\u4e21\u65b9\u304c\u308f\u304b\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u3053\u308c\u3060\u3051\u3067\u9375\u304c\u5168\u90e8\u5c0e\u51fa\u3067\u304d\u308b\u3002<br \/>\n\u5e73\u65871\u6587\u5b57\u5206\u305a\u3064\u4e0a\u8a18\u306e\u8868\u3092\u51fa\u3057\u3066\u6697\u53f7\u6587\u3068\u306e\u5bfe\u5fdc\u304b\u3089\u9375\u3092\u6c42\u3081\u3066\u3044\u304f\u3068\u3001vigenere3d.py\u306e\u5165\u529b\u3068\u3057\u3066\u4e0e\u3048\u308b\u9375\uff08\u306e\u4e00\u4f8b\uff09\u306f<\/p>\n<pre><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nAAAAAAA_aZ2PK_\n<\/pre>\n<p>\u3067\u3042\u308b\u3053\u3068\u304c\u308f\u304b\u308b\u3002<br \/>\n\u3042\u3068\u306f\u5fa9\u53f7\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f5c\u3063\u3066\u6697\u53f7\u6587\u3068\u9375\u3092\u4e0e\u3048\u3066\u3084\u308c\u3070\u3044\u3044\u3002<\/p>\n<pre><pre class=\"brush: python; title: solve.py; notranslate\" title=\"solve.py\">\nimport sys\n\ndef _l(idx, s):\nreturn s&#x5B;idx:] + s&#x5B;:idx]\n\ndef main(c, k1, k2):\ns = &amp;quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz_{}&amp;quot;\nt = &#x5B;&#x5B;_l((i+j) % len(s), s) for j in range(len(s))] for i in range(len(s))]\ni1 = 0\ni2 = 0\np = &amp;quot;&amp;quot;\nfor a in c:\nfor i in range(len(s)):\nif t&#x5B;i]&#x5B;s.find(k1&#x5B;i1])]&#x5B;s.find(k2&#x5B;i2])] == a:\np += s&#x5B;i]\nbreak\ni1 = (i1 + 1) % len(k1)\ni2 = (i2 + 1) % len(k2)\nreturn p\n\nprint main(sys.argv&#x5B;1], sys.argv&#x5B;2], sys.argv&#x5B;2]&#x5B;::-1])\n<\/pre>\n<pre><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nFlag: SECCON{Welc0me_to_SECCON_CTF_2017}\n<\/pre>\n<h2>Run me! (Programming 100)<\/h2>\n<p>\u4e0e\u3048\u3089\u308c\u305f\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3092\u898b\u308b\u3068\u300111011\u756a\u76ee\u306e\u30d5\u30a3\u30dc\u30ca\u30c3\u30c1\u6570\u306e\u982d32\u6841\u304c\u30d5\u30e9\u30b0\u306e\u6a21\u69d8\u3002<br \/>\n\u3042\u3068\u306f\u4e0b\u306e\u901a\u308a\u3002<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">SECCON 2017 Online CTF Run me! (Programming 100) Writeup <a href=\"https:\/\/t.co\/dKj2dsVjIr\">https:\/\/t.co\/dKj2dsVjIr<\/a><\/p>\n<p>&mdash; \u3066\u304d\u3068\u3046 (@tkito) <a href=\"https:\/\/twitter.com\/tkito\/status\/939848382180352000?ref_src=twsrc%5Etfw\">December 10, 2017<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<pre><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nFlag: SECCON{65076140832331717667772761541872}\n<\/pre>\n<h2>Powerful Shell (Binary 300)<\/h2>\n<p>\u96e3\u8aad\u5316\uff08\uff1f\uff09\u3055\u308c\u305fPowershell\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u89e3\u6790\u3059\u308b\uff08Binary\u2026\uff1f\uff09<br \/>\n\u8981\u6240\u8981\u6240\u3067\u5909\u6570\u306b\u4fdd\u6301\u3057\u305fPowershell\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u90e8\u5206\u304c\u3042\u308b\u306e\u3067\u3001\u4ee3\u308f\u308a\u306bWrite-Host\u3067\u6a19\u6e96\u51fa\u529b\u306b\u51fa\u3059\u306a\u3069\u3057\u3066\u3084\u308c\u3070\u898b\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3002<\/p>\n<p>1\u6bb5\u76ee\u3002<br \/>\n\u6587\u5b57\u3092\u5ef6\u3005\u3068\u751f\u6210\u3057\u3066\u5909\u6570$ECCON\u306b\u8ffd\u52a0\u3057\u3066\u3044\u308b\u3002<br \/>\n\u6700\u5f8c\u306e&#8221;Write-Progress -Completed&#8221;\u306e\u5f8c\u306b\u5b9f\u884c\u3057\u3066\u3044\u308b\u306e\u3067\u5909\u6570$ECCON\u3092\u51fa\u529b\u3057\u3066\u3084\u308c\u3070\u3088\u3044\u3002<\/p>\n<p>2\u6bb5\u76ee\u3002<br \/>\n\u30ad\u30fc\u30dc\u30fc\u30c9\u3092\u53e9\u3044\u3066\u79d8\u5bc6\u306e\u30e1\u30ed\u30c7\u30a3\u3092\u6f14\u594f\u3055\u305b\u308b\u3002\u6f14\u594f\u3055\u308c\u305f\u30e1\u30ed\u30c7\u30a3\u304c\u6b63\u3057\u3044\u3068\u6b21\u306e\u6bb5\u968e\u306b\u9032\u3080\u3002<br \/>\n\u74b0\u5883\u7b49\u30c1\u30a7\u30c3\u30af\u3057\u3066\u3044\u308b\u3068\u3053\u308d\u306f\u30b3\u30e1\u30f3\u30c8\u30a2\u30a6\u30c8\u3057\u3064\u3064\u3001Powershell ISE\u3067\u30c7\u30d0\u30c3\u30b0\u5b9f\u884c\u3059\u308b\u306e\u304c\u697d\u3001<br \/>\n&#8220;Play the secret melody.&#8221;\u3068\u6a19\u6e96\u51fa\u529b\u306b\u51fa\u3057\u3066\u3044\u308b\u3068\u3053\u308d\u307e\u3067\u9032\u3080\u3068$keytone\u306b\u30ad\u30fc\u3068\u9cf4\u3089\u3059\u97f3\u306e\u5468\u6ce2\u6570\u306e\u5bfe\u5fdc\u304c\u5165\u3063\u3066\u3044\u308b\u3002<br \/>\n\u6b63\u89e3\u306e\u30e1\u30ed\u30c7\u30a3\u306f\u5c11\u3057\u5f8c\u306e$secret\u5909\u6570\u306b\u5468\u6ce2\u6570\u306e\u5217\u3068\u3057\u3066\u7d0d\u3081\u3089\u308c\u3066\u3044\u308b\u306e\u3067$keytone\u306e\u5185\u5bb9\u3068\u898b\u6bd4\u3079\u3066\u6b63\u89e3\u306e\u30ad\u30fc\u5217\u3092\u5f97\u308b\u3002<br \/>\n\u30bd\u30fc\u30b9\u3092\u8ffd\u3063\u3066\u3044\u304f\u3068\u5165\u529b\u3057\u305f\u30ad\u30fc\u5217\u306f$f\u306b\u6587\u5b57\u5217\u306e\u5f62\u3067\u5165\u3063\u3066\u3044\u308b\u305f\u3081\u3001\u6b63\u89e3\u306e\u30ad\u30fc\u5217\u3067\u6587\u5b57\u5217\u3092\u4f5c\u3063\u3066\u304a\u304f\u3002<\/p>\n<pre><pre class=\"brush: powershell; title: ; notranslate\" title=\"\">\n$f = &amp;quot;hhjhhjhjkjhjhf&amp;quot;\n<\/pre>\n<p>\u3053\u306e$f\u306f\u5f8c\u3067XOR\u30c7\u30b3\u30fc\u30c9\u306e\u9375\u3068\u3057\u3066\u4f7f\u308f\u308c\u308b\u3002<br \/>\n\u4e0b\u306e\u65b9\u306e$text\u4ee5\u964d\u306b\u4e0a\u8a18\u306e$f\u306e\u5024\u3092\u8a2d\u5b9a\u3059\u308b\u4e00\u884c\u3092\u52a0\u3048\u3001\u6700\u5f8c\u306eiex\u3092Write-Host\u306b\u66f8\u304d\u63db\u3048\u308c\u3070\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30c9\u3092\u53d6\u5f97\u3067\u304d\u308b\u3002<\/p>\n<p>3\u6bb5\u76ee\u3002<br \/>\n\u6700\u5f8c\u306fPowershell\u3067\u306e\u8a18\u53f7\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3002<br \/>\n<a href=\"http:\/\/web.archive.org\/web\/20170920034724\/http:\/\/perl-users.jp\/articles\/advent-calendar\/2010\/sym\/11\" target=\"_blank\" rel=\"noopener noreferrer\">\u8a18\u53f7\u306e\u307f\u3067\u4efb\u610f\u306ePowerShell\u30b3\u30fc\u30c9\u3092\u5b9f\u884c &#8211; JPerl advent calendar 2010 Sym Track<\/a>\u306b\u66f8\u304b\u308c\u3066\u3044\u308b\u306e\u3068\u307e\u3063\u305f\u304f\u540c\u3058\u3084\u308a\u304b\u305f\u3067\u8a18\u53f7\u5316\u3057\u3066\u3044\u308b\u3002<br \/>\n\uff08\u4e0a\u8a18\u30ea\u30f3\u30af\u306f\u30b5\u30fc\u30d0\u306b\u30a2\u30af\u30bb\u30b9\u3067\u304d\u306a\u304b\u3063\u305f\u305f\u3081\u3001Web Archive\u306b\u30ea\u30f3\u30af\u3057\u3066\u3044\u308b\uff09<br \/>\n\u3084\u308a\u65b9\u3092\u898b\u3066\u89e3\u8aad\u3057\u3066\u3044\u3051\u3070\u3044\u3044\u3002<\/p>\n<pre><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nFlag: SECCON{P0wEr$H311}\n<\/pre>\n<h2>Simon and Speck Block Ciphers (Crypto 100)<\/h2>\n<p>\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3001\u5e73\u6587\u3001\u6697\u53f7\u6587\u3001\u9375\u306e\u4e00\u90e8\u304c\u4e0e\u3048\u3089\u308c\u3066\u304a\u308a\u3001\u9375\u304c\u30d5\u30e9\u30b0\u306b\u306a\u3063\u3066\u3044\u308b\u3002<br \/>\n\u9375\u306e\u3046\u3061\u308f\u304b\u3089\u306a\u3044\u90e8\u5206\u306f\u305f\u3063\u305f4\u6587\u5b57\u306a\u306e\u3067\u3001Brute force\u3059\u308c\u3070\u3088\u3044\u3002<br \/>\n<a href=\"https:\/\/github.com\/inmcm\/Simon_Speck_Ciphers\" target=\"_blank\" rel=\"noopener noreferrer\">\u30b0\u30b0\u308b\u3068GitHub\u306b\u5b9f\u88c5\u304c\u3042\u3063\u305f<\/a>\u306e\u3067\u3053\u308c\u3092\u4f7f\u3063\u305f\u3002<\/p>\n<pre><pre class=\"brush: python; title: solve.py; notranslate\" title=\"solve.py\">\nfrom simon import SimonCipher\n\ndef str2long(s):\nl = 0\nfor i in range(len(s)):\nl = l * 256 + ord(s&#x5B;i])\nreturn l\n\nplain = 0x6d564d37426e6e71\ncipher = 0xbb5d12ba422834b5\n\nchars = &#x5B; chr(i) for i in range(33, 127) ]\nsolved = False\nfor c1 in chars:\nfor c2 in chars:\nprint &amp;quot;c1 = %c, c2 = %c&amp;quot; % (c1, c2)\nfor c3 in chars:\nfor c4 in chars:\nk = &amp;quot;SECCON{%c%c%c%c}&amp;quot; % (c1, c2, c3, c4)\ns = SimonCipher(str2long(k), key_size = 96, block_size = 64)\nif s.encrypt(plain) == cipher:\nprint &amp;quot;Key = %s&amp;quot; % k\nsolved = True\nbreak\nif solved:\nbreak\nif solved:\nbreak\nif solved:\nbreak\n<\/pre>\n<pre><pre class=\"brush: plain; gutter: false; title: ; notranslate\" title=\"\">\nFlag: SECCON{6Pz0}\n<\/pre>\n<p>\u4ee5\u4e0a\u3002<br \/>\n\u4e45\u3057\u3076\u308a\u306eCTF\u3067\u697d\u3057\u304b\u3063\u305f\u304c\u3001\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u306e\u77e5\u8b58\u304c\u5fc5\u8981\u3068\u3055\u308c\u308b\u554f\u984c\u3092\u89e3\u3051\u3066\u3044\u306a\u3044\u3053\u3068\u304c\u308f\u304b\u308b\u3002<br \/>\n\u5b9f\u50cd\u6642\u9593\u3082\u77ed\u304b\u3063\u305f\uff08\u307e\u3042\u3053\u308c\u306f\u3057\u3087\u3046\u304c\u306a\u3044\uff09<br \/>\nPwn\u7cfb\u3092\u89e3\u3051\u306a\u304b\u3063\u305f\u3057\u305d\u306e\u30b9\u30ad\u30eb\u304c\u3042\u308b\u3068\u306f\u601d\u3048\u306a\u3044\u306e\u3067\u7cbe\u9032\u3057\u305f\u3044\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3042\u3068\u306fVigenere3d\u3068Powerful Shell\u3068Simon\u3092\u89e3\u3044\u305f\u3051\u3069\u4eba\u306b\u3088\u3063\u3066\u89e3\u6cd5\u304c\u5909\u308f\u308b\u3088\u3046\u306a\u554f\u984c\u3058\u3083\u306a\u3044\u3057Writeup\u3092\u66f8\u304f\u307e\u3067\u3082\u306a\u304b\u308d\u3046\u304b\u3002 &mdash; \u3066\u304d\u3068\u3046 (@tkito) Decembe [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":321,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"cybocfi_hide_featured_image":"","footnotes":""},"categories":[14],"tags":[8],"class_list":["post-316","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ctf","tag-ctf"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/posts\/316","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/comments?post=316"}],"version-history":[{"count":22,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/posts\/316\/revisions"}],"predecessor-version":[{"id":978,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/posts\/316\/revisions\/978"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/media\/321"}],"wp:attachment":[{"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/media?parent=316"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/categories?post=316"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/emeth.jp\/diary\/wp-json\/wp\/v2\/tags?post=316"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}