{"id":4199,"date":"2012-05-28T03:31:36","date_gmt":"2012-05-27T18:31:36","guid":{"rendered":"http:\/\/mimumimu.net\/blog\/?p=4199"},"modified":"2012-05-28T10:58:42","modified_gmt":"2012-05-28T01:58:42","slug":"seccon-ctf-%e3%81%a4%e3%81%8f%e3%81%b0%e5%a4%a7%e4%bc%9a-%e3%81%ab%e3%81%84%e3%81%a3%e3%81%a6%e3%81%8d%e3%81%be%e3%81%97%e3%81%9f%e3%80%82","status":"publish","type":"post","link":"https:\/\/mimumimu.net\/blog\/2012\/05\/28\/seccon-ctf-%e3%81%a4%e3%81%8f%e3%81%b0%e5%a4%a7%e4%bc%9a-%e3%81%ab%e3%81%84%e3%81%a3%e3%81%a6%e3%81%8d%e3%81%be%e3%81%97%e3%81%9f%e3%80%82\/","title":{"rendered":"SECCON CTF \u3064\u304f\u3070\u5927\u4f1a \u306b\u3044\u3063\u3066\u304d\u307e\u3057\u305f\u3002"},"content":{"rendered":"<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/P5204103.jpg\"><img loading=\"lazy\" decoding=\"async\" title=\"OLYMPUS DIGITAL CAMERA\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"OLYMPUS DIGITAL CAMERA\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/P5204103_thumb.jpg\" width=\"489\" height=\"368\" \/><\/a><\/p>\n<p><a title=\"http:\/\/www.seccon.jp\/2012\/05\/ctf-1.html\" href=\"http:\/\/www.seccon.jp\/2012\/05\/ctf-1.html\">http:\/\/www.seccon.jp\/2012\/05\/ctf-1.html<\/a>     <br \/>\u306a\u3093\u304b\u516c\u5f0f\u30da\u30fc\u30b8\u3067\u300c\u7269\u91cf\u4f5c\u6226\u300d\u3068\u7d39\u4ecb\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u305d\u3093\u306a\u3053\u3068\u306a\u3044\u3067\u3059\u3002\u304d\u3063\u3068\u3002\u3002<\/p>\n<p>\u307f\u3080\u3089\u3067\u3059\u3002    <br \/>\u798f\u5ca1\u5927\u4f1a\u306b\u7d9a\u3044\u3066\u3001\u3064\u304f\u3070\u5927\u4f1a\u306b\u3082\u53c2\u52a0\u3057\u3066\u304d\u307e\u3057\u305f\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u306a\u304a\u3001\u524d\u56de\u5927\u4f1a\u306b\u3064\u3044\u3066\u306f\u3001\u3053\u3053\u3092\u898b\u3066\u304f\u3060\u3055\u3044\u3002    <br \/><a href=\"http:\/\/mimumimu.net\/blog\/2012\/02\/24\/seccon-ctf-%e7%a6%8f%e5%b2%a1%e5%a4%a7%e4%bc%9a%e3%81%ab%e5%8f%82%e5%8a%a0%e3%81%97%e3%81%a6%e3%81%8d%e3%81%9f%e3%80%82\/\">SECCON CTF \u798f\u5ca1\u5927\u4f1a\u306b\u53c2\u52a0\u3057\u3066\u304d\u305f\u3002 &#8211; \u307f\u3080\u3089\u306e\u624b\u8a18\u624b\u5e33<\/a><\/p>\n<p>&#160;<\/p>\n<p>\u30c1\u30fc\u30e0\u540d\u306f\u524d\u56de\u3068\u540c\u3058 \u300c wasamusume \u300d \u3067\u3059\u304c\u3001    <br \/>\u3088\u308a\u306b\u3088\u3063\u3066\u300c\u3066\u304a\u304f\u308c\u8981\u54e1\u300d\u3092\u78ba\u4fdd\u3057\u5fd8\u308c\u305f\uff08\u3057\u640d\u306d\u305f\uff09 \u305f\u3081\u3001     <br \/>\u524d\u56de\u3068\u6bd4\u8f03\u3057\u307e\u3057\u3066\u3001\u30cd\u30bf\u6027\u306e\u306a\u3044\u30c1\u30fc\u30e0\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>\u3067\u3082\u3001\u305d\u308c\u306f\u305d\u308c\u306f\u548c\u6c17\u85f9\u3005\u3068\u3001\u975e\u5e38\u306b\u4ef2\u306e\u3044\u3044\u30c1\u30fc\u30e0\u304c\u3067\u304d\u3042\u304c\u3063\u3066\u304a\u308a\u307e\u3057\u305f\u306e\u3067\u3001    <br \/>\u524d\u56de\u540c\u69d8\u3001\u3068\u3066\u3082\u697d\u3057\u304b\u3063\u305f\u306e\u306f\u9593\u9055\u3044\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u30d0\u30a4\u30ca\u30ea\u30a2\u30f3\u3084Web \u5c4b\u3055\u3093\u3084\u3001\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u5c4b\u3055\u3093\u3084\u3001    <br \/>\u305d\u308c\u306f\u305d\u308c\u306f\u3001\u5927\u5909\u3059\u3070\u3089\u3057\u3044\u7686\u3055\u3093\u306e\u4e2d\u3067\u53c2\u52a0\u3067\u304d\u305f\u3088\u3046\u306b\u601d\u3048\u307e\u3059\u3002<\/p>\n<p>\u4eca\u56de\u306e\u30c1\u30fc\u30e0\u30e1\u30f3\u30d0\u306f\u3001   <br \/>\u79c1, \u304b\u30fc\u307f\u3055\u3093, \u307b\u3082\u3063\u304d\u3093\u3061\u3083\u3093, \u3042\u305f\u304c\u308f\u3055\u3093, \u3044\u3063\u304f\u3093, \u307f\u3063\u3068\u3055\u3093 \u306e\u8a086\u4eba\u3002    <br \/>\u4f1a\u5834\u306b\u306f\u8a084 \u4eba\u3057\u304b\u5165\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u306e\u3067\u3001    <br \/>\u63a7\u3048\u5ba4\u306b\u81e8\u6642\u3067\uff08\uff1f\uff09\u5cf6\u3092\u4f5c\u308a\u3001\u305d\u3053\u304b\u3089\u3068\u4f1a\u5834\u306e\u4e8c\u3064\u306e\u5834\u6240\u304b\u3089\u554f\u984c\u3092\u89e3\u304f\u5f62\u3092\u53d6\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>CTF\u306e\u96e3\u6613\u5ea6\u3068\u3057\u307e\u3057\u3066\u306f\u3001   <br \/>\u4eca\u56de\u306f\u524d\u56de\u3068\u6bd4\u8f03\u3057\u307e\u3057\u3066\u3001\u554f\u984c\u306e\u96e3\u6613\u5ea6\u304c\u304b\u306a\u308a\u9ad8\u304f\u306a\u3063\u3066\u304a\u308a\u3001     <br \/>\u305f\u3068\u3048\u3070 exe \u30d5\u30a1\u30a4\u30eb\u3092\u8997\u3044\u3066\u3001\u4e2d\u306e\u6319\u52d5\u3092\u898b\u3066\u3001\u7b54\u3048\u3092\u63a2\u3059\u3082\u306e\u306f\u3001     <br \/>\u4eca\u56de\u306f\u7121\u304b\u3063\u305f\u3088\u3046\u306b\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>\u4e00\u65b9\u3067\u3001\u30c0\u30f3\u30d7\u30d5\u30a1\u30a4\u30eb\u304c\u6e21\u3055\u308c\u3066\u89e3\u6790\u3057\u3066\u306d\u3001\u3068\u3044\u3046\u3088\u3046\u306a\u3001\u3088\u308a\u696d\u52d9\u5411\u3051\u3068\u3044\u3046\u304b\u3001    <br \/>\u5b9f\u969b\u306e\u73fe\u5834\u306b\u3088\u308a\u8fd1\u3044\u3068\u3044\u3046\u304b\u3002\u3002 \u305d\u3046\u3044\u3046\u554f\u984c\u304c\u3042\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u53cd\u7701\u3068\u3057\u3066\u306f\u3001    <br \/>\u6bce\u56de\u601d\u3046\u3053\u3068\u3067\u3059\u304c\u3001\u6b21\u56de\u306b\u5411\u3051\u3066\u3082\u3063\u3068\u52c9\u5f37\u3057\u306a\u3044\u3068\u3001\u3068\u3044\u3046\u306e\u304c\u4e00\u3064\u3002     <br \/>\u305d\u308c\u3068\u3082\u3046\u4e00\u3064\u3002\u30d8\u30eb\u30d7\u30d5\u30a1\u30a4\u30eb\u3084\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306f\u8aad\u3082\u3046\u3001\u3068\u3044\u3046\u3053\u3068\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u6b21\u56de\u306b\u5411\u3051\u3066\u601d\u3063\u305f\u3053\u3068\u3068\u3057\u3066\u306f\u3001    <br \/>\u4f1a\u5834\u306b\u3042\u308f\u305b\u3066\u6a5f\u6750\u3092\u7528\u610f\u3057\u3066\u3001\u81ea\u5206\u305f\u3061\u306e\u74b0\u5883\u3092\u4f5c\u3063\u3066\u697d\u3057\u304f\u3084\u308a\u307e\u3057\u3087\u3046\u3002\u3068\u3002<\/p>\n<p>\u306a\u3093\u3066\u3044\u3046\u306e\u304b\u3001\u4fee\u5b66\u65c5\u884c\u306e\u3042\u308c\u3068\u4e00\u7dd2\u3067\u3059\u3088\u306d\u3002    <br \/>\u7981\u6b62\u4e8b\u9805\u3092\u3057\u3063\u304b\u308a\u8aad\u3093\u3067\u3001\u305d\u306e\u4e2d\u3067\u554f\u984c\u306e\u7121\u3044\u7bc4\u56f2\u3067\u304c\u3093\u3070\u308b\u3001\u3068\u3044\u3046\u304b\u3002     <br \/>\u6700\u521d\u306e\u753b\u50cf\u306a\u3093\u304b\u3001\u307e\u3055\u306b\u305d\u3046\u306a\u306e\u3067\u3059\u304c\uff57<\/p>\n<p>&#160;<\/p>\n<p>\u307e\u3058\u30fc\u3081\u306a\u8a18\u4e8b\u306f\u3053\u3093\u306a\u3068\u3053\u308d\uff57<\/p>\n<hr \/>\n<p>2\u65e5\u9593\u884c\u308f\u308c\u308b\u3068\u3044\u3046\u3053\u3068\u3067\u3001    <br \/>\u4eca\u56de\u306e\u5927\u4f1a\u3067\u306f\u3001\u304b\u30fc\u307f\u30fc\u3055\u3093\u304c\u6211\u304c\u5bb6\u306b\u6765\u307e\u3057\u305f\u3002<\/p>\n<p><u>\u5c71\u5965\u3078\u3088\u3046\u3053\u305d\uff08\u3041<\/u><\/p>\n<p>\u6765\u308b\u9014\u4e2d\u3001\u591c\u4e2d\u306e\u753a\u4e2d\u3092\u8d70\u308b\u96fb\u8eca\u306e\u8eca\u7a93\u304c\u3001\u300c\u307e\u3060\u5730\u4e0b\u9244\u306e\u65b9\u304c\u660e\u308b\u3044\u300d\u3068\u8a00\u308f\u3057\u3081\u3066\u3001    <br \/>\u30d7\u30c1\u30ac\u30c3\u30c4\u30dd\u30fc\u30ba\u3068\u3001\u306a\u3093\u304b\u60b2\u3057\u3055\u3092\u899a\u3048\u307e\u3057\u305f\u3002<\/p>\n<p>\u81ea\u5b85\u8fd1\u304f\u306e\u30b9\u30fc\u30d1\u30fc\u92ad\u6e6f\u3067\u5165\u6d74\u3068\u98df\u4e8b\u3002    <br \/>\u610f\u5916\u3068\u591c\u306e\u9732\u5929\u3067\u3001\u661f\u7a7a\u898b\u306a\u304c\u3089\u5165\u6d74\u3059\u308b\u306e\u3082\u3044\u3044\u3067\u3059\u306d\u30fb\u30fb\uff01<\/p>\n<p>\u306b\u3057\u3066\u3082\u6691\u304b\u3063\u305f\u3067\u3059\u3002<\/p>\n<p>\u98df\u4e8b\u51e6\u3067\u306f\u3001\u304b\u30fc\u307f\u30fc\u3055\u3093\u3068\u524d\u56de\u53c2\u52a0\u3057\u3066\u6b20\u5e2d\u3057\u305f\u30e1\u30f3\u30d0    <br \/>\uff08\u307e\u3072\u308b\u3093\u3061\u3083\u3093\u3001\u308f\u3055\u304a\uff09\u306e\u8a71\u3092\u3057\u3066\u3001\u300c\u3044\u3044\u3084\u3064\u3060\u3063\u305f\u306e\u306b\u3002\u3002\u3002\u3002\u300d \u3068     <br \/>\u4e8c\u4eba\u3067\u3001\u304b\u306e\u4e8c\u4eba\u3092\u5072\u3093\u3067\u6ce3\u3044\u3066\u304a\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>\u30fb\u30fb\u30fb\u3046\u305d\u3046\u305d\u3002<\/p>\n<p>\u3067\u3082\u6b21\u306b\u6a5f\u4f1a\u304c\u3042\u3063\u305f\u3089\u798f\u5ca1\u5927\u4f1a\u30e1\u30f3\u30d0\u3068\u3082\u4e00\u7dd2\u306b\u3084\u308a\u305f\u3044\u3088\u306d\uff01    <br \/>\u95a2\u6771\u30e1\u30f3\u30d0\u3068\u4e00\u7dd2\u306b\u6df7\u3056\u308b\u3068\u3001\u5316\u5b66\u53cd\u5fdc\u304c\u8d77\u304d\u308b\u304b\u3082\u306d\uff01<\/p>\n<p>&#160;<\/p>\n<p>CTF \u4e2d\u306f\u3001\u306a\u305c\u304b\u3066\u304a\u304f\u308c\u3068\u8a00\u308f\u308c\u3066\u307f\u305f\u308a\u3001    <br \/>\u306a\u305c\u304b\u5199\u771f\u3092\u5272\u304b\u3057\u591a\u3081\u306b\u64ae\u3089\u308c\u3066\u307f\u305f\u308a\u3002     <br \/>\u306f\u3063\u3068\u308a\u305b\u3093\u305b\u30fc\u304c\u3088\u304f\u3053\u3063\u3061\u306b\u6765\u305f\u308a\u3002<\/p>\n<p>\u3067\u30821\u65e5\u76ee\u306f\u4f1a\u5834\u3067\u306f\u7121\u304f\u3066\u3001\u63a7\u3048\u5ba4\u306b\u9663\u53d6\u3063\u3066\u3084\u3063\u3066\u3044\u305f\u305f\u3081\u3001    <br \/>\u4f1a\u5834\u306e\u3046\u308b\u3055\u3044BGM\u306f\u7121\u304f\u3001\u3061\u3087\u3063\u304b\u3044\u3092\u51fa\u3057\u306b\u6765\u308b\u4eba\u3082\u3042\u307e\u308a\u3044\u306a\u3044\u3068\u3044\u3046\u3053\u3068\u3067\u3001     <br \/>\u3042\u308b\u610f\u5473\u96c6\u4e2d\u3057\u3066\u3067\u304d\u307e\u3057\u305f\u304c\u3001CTF \u3089\u3057\u3055\u3068\u3044\u3046\u304b\u3001\u305d\u3046\u3044\u3046\u3082\u306e\u306b\u6b20\u3051\u307e\u3057\u305f\u3002<\/p>\n<p>\u591c\u3082\u307f\u3093\u306a\u3067\u554f\u984c\u3092\u3002<\/p>\n<p>\u30b3\u30f3\u30d3\u30cb\u3067\u71c3\u6599\u8abf\u9054\u3057\u305f\u308a\u3001\u713c\u304d\u8089\u5c4b\u306b\u7a81\u6483\u3057\u305f\u308a\u3002   <br \/>.pcap \u3058\u3083\u306a\u304f\u3066 .txt \u3060\u305e\u3053\u308c\uff01 \u3068\u3044\u3046\u3053\u3068\u306b\u6c17\u3065\u3044\u305f\u308a\u3001    <br \/>mruby \u3055\u3093\u304c\u52d5\u304f\u3088\u3046\u306b\u306a\u3063\u305f\u308a\u3002    <\/p>\n<p>\u5bdd\u305a\u306b\u304c\u3093\u3070\u3063\u3066\u3044\u305f\u306e\u3067\u3059\u304c\u3001\u9014\u4e2d\u3067\u4f53\u529b\u5207\u308c\u30fb\u30fb\u3002    <br \/>\u3067\u3082\u591c\u304c\u3042\u3063\u305f\u304b\u3089\u3001\u554f\u984c\u304c\u3044\u304f\u3064\u304b\u89e3\u3051\u3066\u30012\u65e5\u76ee\u306b\u3044\u3044\u30b9\u30bf\u30fc\u30c8\u3092\u5207\u308c\u305f\u3093\u3060\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>2\u65e5\u76ee\u306f\u4f1a\u5834\u5185\u3067\u3002\u3084\u306f\u308a\u4f1a\u5834\u5185\u306e\u65b9\u304c\u76db\u308a\u4e0a\u304c\u308a\u307e\u3059\u306d\u3002<\/p>\n<p>\u3044\u3063\u304f\u3093\u3055\u3093\u304c Web \u7cfb\u554f\u984c\u3092\u3070\u3057\u3070\u3057\u3068\u3044\u3066\u3044\u3063\u305f\u308a\u3001   <br \/>\u307f\u3063\u3068\u3055\u3093\u304c\u6c17\u5408\u3044\u3067\u8106\u5f31\u306a\u6697\u53f7\u554f\u984c\u3092\u89e3\u3044\u3066\u3001\u5168\u54e1\u3067\u8e0a\u3063\u305f\u308a \uff08\u6ce8\uff1a\u3066\u304a\u304f\u308c\u30c0\u30f3\u30b9\uff09    <br \/>\u3068\u306b\u304b\u304f\u3068\u306b\u304b\u304f\u6ce8\u76ee\u3092\u6d74\u3073\u305f\u30c1\u30fc\u30e0\u3067\u3042\u308a\u3001\u30c1\u30fc\u30e0\u3068\u3057\u3066\u3082\u3044\u3044\u7dda\u307e\u3067\u884c\u3051\u305f\u3088\u3046\u306b\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u305d\u3057\u3066\u3001CTF \u304c\u7d42\u308f\u3063\u3066\u3001\u6211\u304c\u5bb6\u306b\u5e30\u3063\u3066\u304d\u3066\u3001\u521d\u65e5\u3068\u540c\u3058\u98a8\u5442\u5c4b\u306b\u3002    <br \/>\u304b\u30fc\u307f\u30fc\u3055\u3093\u306e\u8db3\u304c\u3001\u306a\u304b\u306a\u304b\u306b\u5f37\u529b\u3002\u3002<\/p>\n<p>\u6293\u3089\u308c\u307e\u3059\u306d\uff01 \u3046\u304b\u3064\u306b {\u8db3,\u624b} \u51fa\u305b\u306a\u3044\u3067\u3059\u3002<\/p>\n<p>\u6b21\u306e\u65e5\u306e\u671d\u3001\u91d1\u74b0\u65e5\u98df\u3092\u6211\u304c\u5bb6\u304b\u3089\u3044\u3044\u611f\u3058\u3067\u898b\u307e\u3057\u305f\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u3053\u3093\u306a\u611f\u3058\u3067\u697d\u3057\u304f\u904e\u3054\u3057\u3066\u3001SECCON CTF \u3068\u305d\u306e\u305f\u3044\u308d\u3044\u308d\u3068\u3001    <br \/>\u7d50\u69cb\u697d\u3057\u307f\u307e\u3057\u305f\u3002<\/p>\n<p>\u697d\u3057\u3044\u4eba\u305f\u3061\u3067 CTF \u30c1\u30fc\u30e0\u3092\u69cb\u6210\u3057\u3066\u3001    <br \/>\u307e\u305f\u697d\u3057\u304f CTF \u306b\u6b21\u56de\u3082\u53c2\u52a0\u3057\u305f\u3044\u3067\u3059\uff01<\/p>\n<p>&#160;<\/p>\n<p>\u30fb\u30fb\u30fb\u7d9a\u304d\u3092\u8aad\u3080\u306e\u5148\u306b\u3001\u4eca\u56de\u51fa\u305f\u554f\u984c\u306e\u4e00\u3064\u306e\u89e3\u8aac\u8a18\u4e8b\u307f\u305f\u3044\u306a\u306e\u3092\u66f8\u3044\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<p>&#160;<\/p>\n<p><!--more--><\/p>\n<hr \/>\n<p>\u3055\u3066\u3001\u4eca\u56de\u3082SECCON CTF \u3067\u51fa\u305f\u554f\u984c\u306e\u4e00\u3064\u3092\u53d6\u308a\u4e0a\u3052\u3066\u307f\u307e\u3059\u3002<\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image_thumb.png\" width=\"623\" height=\"414\" \/><\/a><\/p>\n<p>\u554f\u984c\u3068\u3057\u3066\u306f\u3001\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u6e21\u3055\u308c\u3066\u3001\u56de\u7b54\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3068\u3044\u3046\u3082\u306e\u3002    <br \/><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/d70ec858ac1f7b3094b0e7461b3be67f.txt\">d70ec858ac1f7b3094b0e7461b3be67f.txt<\/a><\/p>\n<p>&#160;<\/p>\n<p>\u3046\u3061\u306e\u30c1\u30fc\u30e0\u3067\u3059\u3068\u3001\u307e\u305a\u304b\u30fc\u307f\u30fc\u3055\u3093\u304c \u300cMATZ\u300d\u3068\u3044\u3046\u6587\u5b57\u5217\u306b\u6c17\u3065\u3044\u3066\u3001    <br \/>Ruby \u51e6\u7406\u7cfb\u3068\u3044\u3046\u3053\u3068\u306b\u6c17\u3065\u304d\u3001     <br \/>\u79c1\u304c\u6700\u521d\u306e\u4e00\u6587\u3092\u30b3\u30d4\u30fc\u3057\u3066\u691c\u7d22\u3057\u3066\u3001 mruby \u3067\u3042\u308b\u3053\u3068\u306b\u6c17\u3065\u304d\u307e\u3057\u305f\u3002<\/p>\n<p><a title=\"mruby\" href=\"https:\/\/github.com\/mruby\/\">mruby &#8211; github ( https:\/\/github.com\/mruby\/ )<\/a><\/p>\n<p>\u3053\u308c\u3092 git \u3067\u843d\u3068\u3057\u3066\u304d\u3066\u3001Linux \u3067\u3066\u3051\u3066\u3051 make \u3057\u3066\u52d5\u304b\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u30fb\u30fb\u30fb\u4e00\u5fdc\u79c1\u304c\u3084\u3063\u305f\u9806\u756a\u901a\u308a\u306b\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u307e\u305a\u6700\u521d\u306b\u52d5\u304b\u3057\u3066\u307f\u307e\u3059\u3068\u3001\u5185\u90e8\u3067 gets \u3068\u3044\u3046\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3066\u3044\u308b\u306e\u3067\u3059\u304c\u3001    <br \/>mruby \u3055\u3093\u306b\u306f\u305d\u3046\u3044\u3046\u306e\u306f\u7121\u3044\u3088\u3046\u3067\u3001\u56f0\u308a\u307e\u3059\u3002<\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image4.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image4_thumb.png\" width=\"658\" height=\"421\" \/><\/a><\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:789b34af-1b95-4c9f-8309-3a9fe4fccf7b\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c;\">print.c : 40\n\nmrb_value\nmrb_printstr(mrb_state *mrb, mrb_value self)\n{\n  mrb_value argv;\n\n  mrb_get_args(mrb, &quot;o&quot;, &amp;argv);\n  printstr(mrb, argv);\n\n  return argv;\n}\n\nmrb_value\nmrb_input(mrb_state *mrb, mrb_value self)\n{\n  mrb_value argv;\n  char text[1024] = {0};\n\n  scanf(&quot;%s&quot;,text);\n\n  return mrb_str_new_cstr(mrb,text);\n}\n\nvoid\nmrb_init_print(mrb_state *mrb)\n{\n  struct RClass *krn;\n\n  krn = mrb-&gt;kernel_module;\n\n  mrb_define_method(mrb, krn, &quot;__printstr__&quot;, mrb_printstr, ARGS_REQ(1));\n  mrb_define_method(mrb, krn, &quot;__inputstr__&quot;, mrb_input, ARGS_REQ(0));\n}<\/pre>\n<\/div>\n<p>\u3057\u3087\u3046\u304c\u7121\u3044\u306e\u3067\u3001\u3053\u3093\u306a\u611f\u3058\u3067print.c \u3092\u3044\u3058\u3063\u3066\u6587\u5b57\u5165\u529b\u95a2\u6570\u3092\u5185\u90e8\u7684\u306b\u7528\u610f\u3057\u3066\u3001 <\/p>\n<p>mrblib \u306e\u3069\u3053\u304b\u306b\u3001<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:8182a70b-baa4-4ddb-8749-02b4afe13f9b\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: ruby;\">  def gets()\n    return __inputstr__\n  end<\/pre>\n<\/div>\n<p>\u3068\u66f8\u3044\u3066\u3042\u3052\u308c\u3070\u3001\u5185\u90e8\u304b\u3089 gets \u95a2\u6570\u304c\u4f7f\u3048\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002 <\/p>\n<p>\u30fb\u30fb\u30fb\u30fb\u3063\u3066\u304b\u3001 return \u3067\u6b63\u89e3\u3092\u8fd4\u3059\u3088\u3046\u306b\u3059\u308c\u3070\u3044\u3044\u3093\u3067\u3059\u3051\u308c\u3069\u306d\u30fb\u30fb\uff57\uff57<\/p>\n<p>&#160;<\/p>\n<p>\u305d\u3057\u3066\u305d\u306e\u5f8c\u3001<\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/pics011.png\"><img loading=\"lazy\" decoding=\"async\" title=\"pics01\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"pics01\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/pics01_thumb1.png\" width=\"658\" height=\"399\" \/><\/a><\/p>\n<p>\u308c\u3063\u3064 VM \u306e\u6319\u52d5\u3092\u307f\u3066\u3044\u304d\u307e\u3057\u3087\u3046\u30fc\uff01\uff01<\/p>\n<p>&#160;<\/p>\n<h4><u>\u30fb\u30fb\u30fb\u30fb\u306f\u3044\u3001\u8a70\u307f\u307e\u3059\u3002\u3066\u304a\u304f\u308c\u307e\u3059\u3002<\/u><\/h4>\n<p>&#160;<\/p>\n<p>\u5b9f\u969b\u79c1\u306f\u3001CTF \u4e2d\u306f\u3053\u3093\u306a\u611f\u3058\u3067 VM \u306e\u6319\u52d5\u3092\u898b\u3066\u3044\u305f\u308f\u3051\u3067\u3059\u304c\u3001 <\/p>\n<p>\u305d\u3093\u306a\u3053\u3068\u3057\u306a\u304f\u3066\u3082 [ \u2013verbose ] \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u3064\u3051\u308c\u3070\u3001<\/p>\n<p>\u3060\u3060\u3060\u3060\u30fc\u3063\u3068\u4eba\u9593\u304c\u8aad\u3081\u308b\u30b3\u30fc\u30c9\u304c\u51fa\u3066\u304f\u308b\u3093\u3067\u3059\u3088\u306d\u3002<\/p>\n<p>\u30fb\u30fb\u30fb\u30fb\u30de\u30cb\u30e5\u30a2\u30eb\u8aad\u3081\u3070\u308f\u304b\u3063\u305f\u3053\u3068\u306a\u306e\u306b\u3002\u3002\u3002 orz<\/p>\n<p>&#160;<\/p>\n<p>\u3068\u3044\u3046\u3053\u3068\u3067\u6c17\u3092\u53d6\u308a\u76f4\u3057\u3066\u3002<\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image2.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image_thumb2.png\" width=\"647\" height=\"368\" \/><\/a><\/p>\n<p>\u3053\u3093\u306a\u306b\u8aad\u307f\u3084\u3059\u304f\u306a\u3063\u305f\u3088\uff01\uff01 \u3084\u3063\u305f\u306d\u305f\u3048\uff08\uff52\uff59 <\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/output.txt\">output.txt<\/a><\/p>\n<p>&#160;<\/p>\n<p>\u307e\u305a\u3053\u306e\u753b\u9762\u304b\u3089\u8aad\u3081\u307e\u3059\u306e\u306f\u3001<\/p>\n<p>$encrypted_message \u3068\u3044\u3046\u914d\u5217 (ARRAY) \u304c\u3042\u3063\u3066\u3001\u9577\u3055\u306f 20 <\/p>\n<p>\u305d\u308c\u3067\u3001 R2 \u304b\u3089\u3068\u3044\u3046\u3053\u3068\u306a\u306e\u3067\u3001<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:38c37945-3aa2-4caf-8d83-17fde7dc931f\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c;\">int em[] = { 151, 73, 85, 81, 31, 64, 85, 24, 94, 72, 15, 23, 64, 3, 49, 85, 120, 106, 110, 68 };<\/pre>\n<\/div>\n<p>C \u306e\u30b3\u30fc\u30c9\u306b\u3057\u307e\u3059\u3068\u3001\u3053\u3046\u3044\u3046\u611f\u3058\u3067\u3057\u3087\u3046\u304b\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u305d\u3057\u3066\u3001\u30b0\u30ed\u30fc\u30d0\u30eb\u5909\u6570\u306e v1 \u3068 v2 \u3068\u3044\u3046\u306e\u304c\u3042\u3063\u3066\u3001 <\/p>\n<p>\u305d\u308c\u305e\u308c\u521d\u671f\u5024\u304c 255, 98 \u3068\u3044\u3046\u3053\u3068\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u7d9a\u3051\u3066\u8aad\u3093\u3067\u3044\u304d\u307e\u3057\u3066\u3001<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:d07b2fe7-f3f9-4b2e-9dd3-3d0f1fc15929\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: text;\">156 OP_LAMBDA\tR3\tI(118)\t1\n157 OP_METHOD\tR2\t'ord'\n158 OP_TCLASS\tR2\n159 OP_LAMBDA\tR3\tI(119)\t1\n160 OP_METHOD\tR2\t'correct'\n161 OP_TCLASS\tR2\n162 OP_LAMBDA\tR3\tI(120)\t1\n163 OP_METHOD\tR2\t'wrong'\n164 OP_TCLASS\tR2\n165 OP_LAMBDA\tR3\tI(121)\t1\n166 OP_METHOD\tR2\t'input_the_key'\n167 OP_TCLASS\tR2\n168 OP_LAMBDA\tR3\tI(122)\t1\n169 OP_METHOD\tR2\t'check_length'\n170 OP_TCLASS\tR2\n171 OP_LAMBDA\tR3\tI(123)\t1\n172 OP_METHOD\tR2\t'compare_encrypted_message'\n173 OP_TCLASS\tR2\n174 OP_LAMBDA\tR3\tI(125)\t1\n175 OP_METHOD\tR2\t'main'<\/pre>\n<\/div>\n<p>\u3053\u3053\u306e\u90e8\u5206\u3002 <\/p>\n<p>\u95a2\u6570\u540d\u3068\u756a\u53f7\uff08\uff1f\uff09\u3092\u7d50\u3073\u3064\u3051\u3066\u3044\u308b\u3068\u898b\u3048\u307e\u3059\u3002<\/p>\n<blockquote>\n<p>ord = 118 <\/p>\n<p>correct = 119<\/p>\n<p>wrong = 120<\/p>\n<p>input_the_key = 121<\/p>\n<p>check_length = 122<\/p>\n<p>compare_encrypted_message = 123<\/p>\n<p>main = 125<\/p>\n<\/blockquote>\n<p>\u3053\u3093\u306a\u611f\u3058\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u305d\u306e\u5f8c\u3092\u8aad\u3093\u3067\u307f\u307e\u3059\u3068\u3001<\/p>\n<p>178 OP_SEND&#160;&#160;&#160; R2&#160;&#160;&#160; &#8216;main&#8217;&#160;&#160;&#160; 0 <\/p>\n<p>179 OP_STOP<\/p>\n<p>\u3068\u3042\u308a\u307e\u3059\u306e\u3067\u3001 main \u95a2\u6570\u3092\u898b\u306b\u884c\u304d\u307e\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b59c62b8-d225-4248-862d-766f766aec4f\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: text;\">irep 125 nregs=6 nlocals=4 pools=0 syms=4\n000 OP_ENTER\t0:0:0:0:0:0:0\n001 OP_LOADSELF\tR4\n002 OP_LOADNIL\tR5\n003 OP_SEND\tR4\t'input_the_key'\t0\n004 OP_MOVE\tR2\tR4\n005 OP_LOADSELF\tR4\n006 OP_MOVE\tR5\tR2\n007 OP_LOADNIL\tR6\n008 OP_SEND\tR4\t'check_length'\t1\n009 OP_LOADSELF\tR4\n010 OP_MOVE\tR5\tR2\n011 OP_LOADNIL\tR6\n012 OP_SEND\tR4\t'compare_encrypted_message'\t1\n013 OP_LOADSELF\tR4\n014 OP_LOADNIL\tR5\n015 OP_SEND\tR4\t'correct'\t0\n016 OP_RETURN\tR4<\/pre>\n<\/div>\n<p>main \u95a2\u6570\u3067\u306f\u3001 input_the_key \u3055\u308c\u3066\u3001 <\/p>\n<p>check_length \u3055\u308c\u3066\u3001 compare_encrypted_message \u3055\u308c\u3066\u3001 correct \u3055\u308c\u3066\u308b\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u95a2\u6570\u306e\u540d\u524d\u304b\u3089 check_length \u3067\u9577\u3055\u898b\u3066\u3001 <\/p>\n<p>compare_encrypted_message \u3067\u5165\u529b\u6587\u5b57\u5217\u3068\u306e\u6bd4\u8f03\u3092\u3084\u3063\u3066\u3044\u308b\u3068\u4e88\u60f3\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>\u30b3\u30fc\u30c9\u306f\u5272\u611b\u3057\u307e\u3059\u304c\u3001 check_length \u3067\u306f encrypted_message \u306e size \u306e\u7d50\u679c\u3068\u306e\u6bd4\u8f03 <\/p>\n<p>\u3064\u307e\u308a\u3001\u5165\u529b\u6587\u5b57\u6570\u304c 20 \u6587\u5b57\u3067\u3042\u308b\u304b\u3069\u3046\u304b\u3092\u30c1\u30a7\u30c3\u30af\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\u3053\u3053\u304b\u3089\u3001\u5165\u529b\u6587\u5b57\u5217\u304c 20 \u6587\u5b57\u3067\u3042\u308b\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<p>\u7d9a\u3044\u3066\u3001 compare_encrypted_message \u5185\u3067\u547c\u3070\u308c\u3066\u3044\u308b\u30e9\u30e0\u30c0\u306e\u4e2d\u8eab\u3092\u898b\u3066\u3044\u304d\u307e\u3059\u3002<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:3fa843b3-132d-4783-8732-ab080c1a458a\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: text;\">irep 124 nregs=8 nlocals=5 pools=0 syms=8\n000 OP_ENTER\t1:0:0:0:0:0:0\n001 OP_LOADSELF\tR5\n002 OP_GETUPVAR\tR6\t1\t0\n003 OP_MOVE\tR7\tR1\n004 OP_LOADNIL\tR8\n005 OP_SEND\tR5\t'ord'\t2\n006 OP_GETGLOBAL\tR6\t'$v1'\n007 OP_LOADNIL\tR7\n008 OP_SEND\tR5\t'^'\t1\n009 OP_MOVE\tR3\tR5\n010 OP_MOVE\tR5\tR3\n011 OP_LOADI\tR6\t85\n012 OP_LOADNIL\tR7\n013 OP_SEND\tR5\t'^'\t1\n014 OP_SETGLOBAL\t'$v2'\tR5\n015 OP_GETGLOBAL\tR5\t'$v1'\n016 OP_GETGLOBAL\tR6\t'$v2'\n017 OP_LOADNIL\tR7\n018 OP_SEND\tR5\t'^'\t1\n019 OP_SETGLOBAL\t'$v1'\tR5\n020 OP_MOVE\tR5\tR3\n021 OP_GETGLOBAL\tR6\t'$encrypted_message'\n022 OP_MOVE\tR7\tR1\n023 OP_LOADNIL\tR8\n024 OP_SEND\tR6\t'[]'\t1\n025 OP_LOADNIL\tR7\n026 OP_SEND\tR5\t'!='\t1\n027 OP_JMPNOT\tR5\t032\n028 OP_LOADSELF\tR5\n029 OP_LOADNIL\tR6\n030 OP_SEND\tR5\t'wrong'\t0\n031 OP_LOADNIL\tR5\n032 OP_RETURN\tR5<\/pre>\n<\/div>\n<p>ord \u95a2\u6570\u306f\u898b\u305f\u611f\u3058\u3001 ASCII \u30b3\u30fc\u30c9\u3068\u5bfe\u5fdc\u3055\u305b\u3066\u3044\u308b\u3088\u3046\u306a\u611f\u3058\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u3053\u308c\u3092\u307e\u305a\u306f\u666e\u901a\u306b C# \u306b\u8d77\u3053\u3057\u3066\u308f\u304b\u308a\u3084\u3059\u304f\u3057\u307e\u3059\u3002<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:542937b0-3c1b-45ab-b3f6-bb13936b64bd\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">    static bool question(int c, int n)\n    {\n        int r5 = c ^ v1;\n        int r3 = r5;\n        r5 = r5 ^ 85;\n        v2 = r5;\n        r5 = v1 ^ v2;\n        v1 = r5;\n        r5 = r3;\n\n        if (encrypted_message[n] == r5)\n        {\n            return true;\n        }\n        else\n        {\n            return false;\n        }\n    }<\/pre>\n<\/div>\n<p>\u3053\u3093\u306a\u611f\u3058\u3067\u3059\u304b\u306d\u30fb\u30fb\uff57<\/p>\n<p>&#160;<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:0d65bdd5-e31c-4f83-807d-f8d510335086\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">        static void Main(string[] args)\n        {\n            int[] em = { 151, 73, 85, 81, 31, 64, 85, 24, 94, 72, 15, 23, 64, 3, 49, 85, 120, 106, 110, 68 };\n            int v1 = 255, v2 = 98;\n            var n = new string(\n                                em.Select(e =&gt;\n                                    Enumerable.Range(33, 127)\n                                    .SkipWhile(x =&gt; (x ^ v1) != e)\n                                    .Select(x =&gt; { v2 = x ^ v1 ^ 85; v1 ^= v2; return x; })\n                                    .First()\n                                ).Select&lt;int, char&gt;(x =&gt; { return (char)x; })\n                                .ToArray()\n                                );\n\n            Console.WriteLine(&quot;Answer : {0:G}\\n&quot;, n);\n        }<\/pre>\n<\/div>\n<p>\u3042\u3068\u3053\u308c\u3092\u3001\u3053\u3093\u306a\u306e\u3067\u3050\u308b\u3050\u308b\u56de\u3057\u3066\u3082\u3044\u3044\u306e\u3067\u3059\u304c\u3001 <\/p>\n<p>\uff08\u305f\u3060\u3057\u3001 v1 \u3068 v2 \u306e\u5024\u304c\u4e0d\u6b63\u306a\u5024\u306e\u6642\u306b\u3082\u66f4\u65b0\u3055\u308c\u3066\u3057\u307e\u3046\u306e\u3067\u3001\u305d\u3053\u3092\u8003\u616e\u3059\u308b\uff09<\/p>\n<p>\u305d\u308c\u306f\u3072\u3063\u3058\u3087\u30fc\u306b\u3064\u307e\u3089\u306a\u3044\u3002<\/p>\n<p>\u30fb\u30fb\u30fb\u3068\u3044\u3046\u304b\u3001\u67d0 N \u3055\u3093\u306b \u300c\u3042\u3063\u305f\u3088\u306d\u30fc\u3001\u30d6\u30eb\u30fc\u30c8\u30d5\u30a9\u30fc\u30b9\u3067\u63a2\u3057\u3066\u308b\u3068\u3053\u308d\u30fc\uff57\u300d \u3068\u3001 <\/p>\n<p>\u67d0\u6240\u3067\u98df\u4e8b\u3092\u3057\u305f\u969b\u306b\u8a00\u308f\u308c\u3066\u3057\u307e\u3063\u305f\u306e\u3067\u3001\u3061\u3083\u3093\u3068\u89e3\u3044\u3066\u307f\u307e\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<hr \/>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:ead261b2-5d0d-4957-85db-033628b83259\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">    static bool question(int c, int n)\n    {\n        int r5 = c ^ v1;\n        int r3 = r5;\n        r5 = r5 ^ 85;\n        v2 = r5;\n        r5 = v1 ^ v2;\n        v1 = r5;\n        r5 = r3;\n\n        if (encrypted_message[n] == r3)\n        {\n            return true;\n        }\n        else\n        {\n            return false;\n        }\n    }<\/pre>\n<\/div>\n<p>\u3053\u308c\u3092\u898b\u308b\u3068\u3001 <\/p>\n<p>\u307e\u305a\u6b63\u7b54\u304b\u3069\u3046\u304b\u306f r3 \u3068\u306e\u6bd4\u8f03\u306b\u306a\u3063\u3066\u3044\u308b\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<p>\u3053\u3053\u304b\u3089\u3001&#160; <br \/>(\u5165\u529b\u6587\u5b57) ^ v1&#160; \u306e\u5024\u304c\u3001 encrypted_message \u306e\u6240\u5b9a\u306e\u4f4d\u7f6e\u306e\u5024\u3068\u540c\u3058\u3067\u3042\u308c\u3070\u3001<\/p>\n<p>\u6b63\u3057\u3044\u6587\u5b57\u5217\u3068\u898b\u306a\u3057\u3066\u826f\u3055\u305d\u3046\u3067\u3059\u3002<\/p>\n<p>\u3055\u3089\u306b\u3053\u306e\u30b3\u30fc\u30c9\u3092\u898b\u3084\u3059\u304f\u3059\u308b\u305f\u3081\u306b\u6574\u7406\u3057\u3001 <\/p>\n<p>\u305d\u306e\u904e\u7a0b\u3067 v2 \u3042\u305f\u308a\u304c\u524a\u308c\u305d\u3046\u306a\u306e\u3067\u524a\u308a\u3001\u30b3\u30fc\u30c9\u3092\u7e2e\u3081\u307e\u3059\u3068\u3001<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:4d7ca521-1518-4ad5-916d-b8e41620f73d\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">    static bool question(int c, int n)\n    {\n        int r5 = c ^ v1;\n        int r3 = r5;\n        v1 = v1 ^ r5 ^ 85;\n\n        if (encrypted_message[n] == r3)\n        {\n            return true;\n        }\n        else\n        {\n            return false;\n        }\n    }<\/pre>\n<\/div>\n<p>\u3053\u3046\u306a\u3063\u3066\u304d\u307e\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u6b21\u306b\u3001\u51fa\u529b\u304b\u3089\u9006\u306b\u898b\u3066\u3044\u304f\u3068\u3001 <\/p>\n<p>encrypted_message[n] \u304b\u3089\u5143\u306e\u6587\u5b57\u5217\u3092\u51fa\u3059\u305f\u3081\u306b\u306f<\/p>\n<p>v1 \u3068\u6392\u4ed6\u7684\u8ad6\u7406\u548c\u3092\u3068\u3063\u3066\u3042\u3052\u308c\u3070\u3044\u3044\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<p>\u305d\u3057\u3066\u3001 <\/p>\n<p>v1 \u306f\u3001\u6697\u53f7\u6587\u306b\u5bfe\u3057\u3066 ( v1, \u6697\u53f7\u6587\u5b57, 85 ) \u3068\u3067<\/p>\n<p>\u6392\u4ed6\u7684\u8ad6\u7406\u548c\u3092\u3068\u3063\u305f\u5024\u3067\u66f4\u65b0\u3055\u308c\u3044\u3066\u3044\u304f\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:b28a4c46-08ed-4c40-8503-9e4e8cf96e84\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">int ans = encrypted_message[n] ^ v1;\nv1 = v1 ^ encrypted_message[n] ^ 85;<\/pre>\n<\/div>\n<p>\u30b3\u30fc\u30c9\u306b\u76f4\u3059\u3068\u3053\u3093\u306a\u611f\u3058\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u3053\u3053\u307e\u3067\u304f\u308c\u3070\u3001\u5f8c\u306f\u30b3\u30fc\u30c9\u306b\u8d77\u3053\u3057\u3066\u3001<\/p>\n<div id=\"scid:f32c3428-b7e9-4f15-a8ea-c502c7ff2e88:888ae5ba-8727-4f23-85ca-0d7bf7ae19a7\" class=\"wlWriterSmartContent\" style=\"float: none; padding-bottom: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px\">\n<pre class=\"brush: c#;\">        static void Main(String[] args)\n        {\n            int[] em = { 151, 73, 85, 81, 31, 64, 85, 24, 94, 72, 15, 23, 64, 3, 49, 85, 120, 106, 110, 68 };\n            int v1 = 255;\n\n            var n = new string(\n                            em.Select(e =&gt; { var r = e ^ v1; v1 ^= e ^ 85; return r; })\n                              .Select&lt;int, char&gt;(x =&gt; { return (char)x; })\n                              .ToArray()\n                              );\n\n            Console.WriteLine(&quot;Answer : {0:G}\\n&quot;, n);\n        }<\/pre>\n<\/div>\n<p>\u5b9f\u884c\u3059\u308c\u3070\u3053\u3093\u306b\u3061\u306f\uff01<\/p>\n<p>&#160;<\/p>\n<blockquote lang=\"ja\" class=\"twitter-tweet\">\n<p>mruby ::= RiteVM + parser + code generator + mruby Ruby lib + mruby C lib + binary I\/O<\/p>\n<p>\u2014 Hiroshi Nakamura\u3055\u3093 (@nahi) <a href=\"https:\/\/twitter.com\/nahi\/status\/165302394203283456\" data-datetime=\"2012-02-03T05:15:36+00:00\">2\u6708 3, 2012<\/a><\/p>\n<\/blockquote>\n<p><script src=\"\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p>&#160;<\/p>\n<p>\u3068\u3044\u3046\u308f\u3051\u3067\u3053\u3093\u306a\u611f\u3058\u3067\u3059\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u305d\u3057\u3066\u4eca\u56de\u3001\u3053\u306e\u554f\u984c\u306b\u624b\u9593\u53d6\u3063\u305f\u975e\u5e38\u306b\u5927\u304d\u306a\u7406\u7531\u306f\u3001 <\/p>\n<p>\u30d8\u30eb\u30d7\u898b\u307e\u3057\u3087\u3046\u3002\u3068\u3044\u3046\u3053\u3068\u3002<\/p>\n<p><a href=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image3.png\"><img loading=\"lazy\" decoding=\"async\" title=\"image\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" border=\"0\" alt=\"image\" src=\"http:\/\/mimumimu.net\/blog\/wp-content\/uploads\/2012\/05\/image_thumb3.png\" width=\"637\" height=\"466\" \/><\/a><\/p>\n<p>&#160;<\/p>\n<p>\u3070\u3063\u3061\u308a\u66f8\u3044\u3066\u3042\u3063\u305f\u3093\u3067\u3059\u3088\u306d\u3047\u3002\u3002\u3002 \u3046\u30fc\u3093\u3002\u3002\u3002 <\/p>\n<p>\u7d76\u5bfe \u2013verbose \u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u77e5\u3063\u3066\u3044\u305f\u3089\u89e3\u3051\u3066\u305f\u3002\u3002\u3002<\/p>\n<p>&#160;<\/p>\n<p>\u524d\u56de\u306f LLVM \u304c\u51fa\u3066\u3001\u305d\u306e\u3068\u304d\u306f\u9006\u30b3\u30f3\u30d1\u30a4\u30e9\u898b\u3064\u3051\u3066\u304d\u3066\u3001 <\/p>\n<p>\u5143\u306b\u623b\u3057\u3066\u3001\u30b3\u30fc\u30c9\u66f8\u3044\u3066\u3001\u63a2\u3057\u3066\u307f\u305f\u3044\u306a\u3053\u3068\u3092\u3057\u3066\u3044\u307e\u3057\u305f\u304c\u3001<\/p>\n<p>\u305d\u308c\u306b\u6bd4\u3079\u308c\u3070\u3053\u3063\u3061\u306e\u65b9\u306f\u30aa\u30d7\u30b7\u30e7\u30f3\u3092\u77e5\u3063\u3066\u3044\u308c\u3070\u697d\u3060\u3063\u305f\u3088\u3046\u306b\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>\u307e\u3041\u3001\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u898b\u3088\u3046\u306d\u3063\u3066\u3053\u3068\u3067\u3059\u306d\uff01\uff01<\/p>\n<p>&#160;<\/p>\n<p>\u3063\u3066\u3053\u3068\u3067\u3001\u3068\u3063\u3066\u3082\u697d\u3057\u304b\u3063\u305f\u3067\u3059\uff01\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>http:\/\/www.seccon.jp\/2012\/05\/ctf-1.html \u306a\u3093\u304b\u516c\u5f0f\u30da\u30fc\u30b8\u3067\u300c\u7269\u91cf\u4f5c\u6226\u300d\u3068\u7d39\u4ecb\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u305d\u3093\u306a\u3053\u3068\u306a\u3044\u3067\u3059\u3002\u304d\u3063\u3068\u3002\u3002 \u307f\u3080\u3089\u3067\u3059\u3002 \u798f\u5ca1\u5927\u4f1a\u306b\u7d9a\u3044\u3066\u3001\u3064\u304f\u3070\u5927\u4f1a\u306b\u3082\u53c2\u52a0\u3057\u3066\u304d [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[21,368],"class_list":["post-4199","post","type-post","status-publish","format-standard","hentry","category-other","tag-seccon-ctf","tag-368"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/posts\/4199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/comments?post=4199"}],"version-history":[{"count":0,"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/posts\/4199\/revisions"}],"wp:attachment":[{"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/media?parent=4199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/categories?post=4199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mimumimu.net\/blog\/wp-json\/wp\/v2\/tags?post=4199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}