icoa-cli 2.10.0 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (445) hide show
  1. package/dist/commands/ctf.js +19 -2
  2. package/dist/commands/exam.js +3 -1
  3. package/dist/lib/demo-exam.d.ts +10 -0
  4. package/dist/lib/demo-exam.js +54 -0
  5. package/dist/lib/translation.js +21 -7
  6. package/dist/repl.js +106 -15
  7. package/package.json +3 -2
  8. package/translations/ar/1.json +9 -0
  9. package/translations/ar/10.json +9 -0
  10. package/translations/ar/11.json +9 -0
  11. package/translations/ar/12.json +9 -0
  12. package/translations/ar/13.json +9 -0
  13. package/translations/ar/14.json +9 -0
  14. package/translations/ar/15.json +9 -0
  15. package/translations/ar/16.json +9 -0
  16. package/translations/ar/17.json +9 -0
  17. package/translations/ar/18.json +9 -0
  18. package/translations/ar/19.json +9 -0
  19. package/translations/ar/20.json +9 -0
  20. package/translations/ar/21.json +9 -0
  21. package/translations/ar/22.json +9 -0
  22. package/translations/ar/23.json +9 -0
  23. package/translations/ar/24.json +9 -0
  24. package/translations/ar/25.json +9 -0
  25. package/translations/ar/26.json +9 -0
  26. package/translations/ar/27.json +9 -0
  27. package/translations/ar/28.json +9 -0
  28. package/translations/ar/29.json +9 -0
  29. package/translations/ar/30.json +9 -0
  30. package/translations/ar/31.json +9 -0
  31. package/translations/ar/32.json +9 -0
  32. package/translations/ar/33.json +9 -0
  33. package/translations/ar/34.json +9 -0
  34. package/translations/ar/35.json +9 -0
  35. package/translations/ar/36.json +9 -0
  36. package/translations/ar/37.json +9 -0
  37. package/translations/ar/38.json +9 -0
  38. package/translations/ar/39.json +9 -0
  39. package/translations/ar/4.json +9 -0
  40. package/translations/ar/40.json +9 -0
  41. package/translations/ar/41.json +9 -0
  42. package/translations/ar/42.json +9 -0
  43. package/translations/ar/43.json +9 -0
  44. package/translations/ar/44.json +9 -0
  45. package/translations/ar/45.json +9 -0
  46. package/translations/ar/46.json +9 -0
  47. package/translations/ar/47.json +9 -0
  48. package/translations/ar/48.json +9 -0
  49. package/translations/ar/49.json +9 -0
  50. package/translations/ar/5.json +9 -0
  51. package/translations/ar/6.json +9 -0
  52. package/translations/ar/7.json +9 -0
  53. package/translations/ar/8.json +9 -0
  54. package/translations/ar/9.json +9 -0
  55. package/translations/ar/demo.json +332 -0
  56. package/translations/de/1.json +9 -0
  57. package/translations/de/demo.json +332 -0
  58. package/translations/es/1.json +9 -0
  59. package/translations/es/10.json +9 -0
  60. package/translations/es/11.json +9 -0
  61. package/translations/es/12.json +9 -0
  62. package/translations/es/13.json +9 -0
  63. package/translations/es/14.json +9 -0
  64. package/translations/es/15.json +9 -0
  65. package/translations/es/16.json +9 -0
  66. package/translations/es/17.json +9 -0
  67. package/translations/es/18.json +9 -0
  68. package/translations/es/19.json +9 -0
  69. package/translations/es/20.json +9 -0
  70. package/translations/es/21.json +9 -0
  71. package/translations/es/22.json +9 -0
  72. package/translations/es/23.json +9 -0
  73. package/translations/es/24.json +9 -0
  74. package/translations/es/25.json +9 -0
  75. package/translations/es/26.json +9 -0
  76. package/translations/es/27.json +9 -0
  77. package/translations/es/28.json +9 -0
  78. package/translations/es/29.json +9 -0
  79. package/translations/es/30.json +9 -0
  80. package/translations/es/31.json +9 -0
  81. package/translations/es/32.json +9 -0
  82. package/translations/es/33.json +9 -0
  83. package/translations/es/34.json +9 -0
  84. package/translations/es/35.json +9 -0
  85. package/translations/es/36.json +9 -0
  86. package/translations/es/37.json +9 -0
  87. package/translations/es/38.json +9 -0
  88. package/translations/es/39.json +9 -0
  89. package/translations/es/4.json +9 -0
  90. package/translations/es/40.json +9 -0
  91. package/translations/es/41.json +9 -0
  92. package/translations/es/42.json +9 -0
  93. package/translations/es/43.json +9 -0
  94. package/translations/es/44.json +9 -0
  95. package/translations/es/45.json +9 -0
  96. package/translations/es/46.json +9 -0
  97. package/translations/es/47.json +9 -0
  98. package/translations/es/48.json +9 -0
  99. package/translations/es/49.json +9 -0
  100. package/translations/es/5.json +9 -0
  101. package/translations/es/6.json +9 -0
  102. package/translations/es/7.json +9 -0
  103. package/translations/es/8.json +9 -0
  104. package/translations/es/9.json +9 -0
  105. package/translations/es/demo.json +332 -0
  106. package/translations/fr/1.json +9 -0
  107. package/translations/fr/10.json +9 -0
  108. package/translations/fr/11.json +9 -0
  109. package/translations/fr/12.json +9 -0
  110. package/translations/fr/13.json +9 -0
  111. package/translations/fr/14.json +9 -0
  112. package/translations/fr/15.json +9 -0
  113. package/translations/fr/16.json +9 -0
  114. package/translations/fr/17.json +9 -0
  115. package/translations/fr/18.json +9 -0
  116. package/translations/fr/19.json +9 -0
  117. package/translations/fr/20.json +9 -0
  118. package/translations/fr/21.json +9 -0
  119. package/translations/fr/22.json +9 -0
  120. package/translations/fr/23.json +9 -0
  121. package/translations/fr/24.json +9 -0
  122. package/translations/fr/25.json +9 -0
  123. package/translations/fr/26.json +9 -0
  124. package/translations/fr/27.json +9 -0
  125. package/translations/fr/28.json +9 -0
  126. package/translations/fr/29.json +9 -0
  127. package/translations/fr/30.json +9 -0
  128. package/translations/fr/31.json +9 -0
  129. package/translations/fr/32.json +9 -0
  130. package/translations/fr/33.json +9 -0
  131. package/translations/fr/34.json +9 -0
  132. package/translations/fr/35.json +9 -0
  133. package/translations/fr/36.json +9 -0
  134. package/translations/fr/37.json +9 -0
  135. package/translations/fr/38.json +9 -0
  136. package/translations/fr/39.json +9 -0
  137. package/translations/fr/4.json +9 -0
  138. package/translations/fr/40.json +9 -0
  139. package/translations/fr/41.json +9 -0
  140. package/translations/fr/42.json +9 -0
  141. package/translations/fr/43.json +9 -0
  142. package/translations/fr/44.json +9 -0
  143. package/translations/fr/45.json +9 -0
  144. package/translations/fr/46.json +9 -0
  145. package/translations/fr/47.json +9 -0
  146. package/translations/fr/48.json +9 -0
  147. package/translations/fr/49.json +9 -0
  148. package/translations/fr/5.json +9 -0
  149. package/translations/fr/6.json +9 -0
  150. package/translations/fr/7.json +9 -0
  151. package/translations/fr/8.json +9 -0
  152. package/translations/fr/9.json +9 -0
  153. package/translations/fr/demo.json +332 -0
  154. package/translations/hi/1.json +9 -0
  155. package/translations/hi/10.json +9 -0
  156. package/translations/hi/11.json +9 -0
  157. package/translations/hi/12.json +9 -0
  158. package/translations/hi/13.json +9 -0
  159. package/translations/hi/14.json +9 -0
  160. package/translations/hi/15.json +9 -0
  161. package/translations/hi/16.json +9 -0
  162. package/translations/hi/17.json +9 -0
  163. package/translations/hi/18.json +9 -0
  164. package/translations/hi/19.json +9 -0
  165. package/translations/hi/20.json +9 -0
  166. package/translations/hi/21.json +9 -0
  167. package/translations/hi/22.json +9 -0
  168. package/translations/hi/23.json +9 -0
  169. package/translations/hi/24.json +9 -0
  170. package/translations/hi/25.json +9 -0
  171. package/translations/hi/26.json +9 -0
  172. package/translations/hi/27.json +9 -0
  173. package/translations/hi/28.json +9 -0
  174. package/translations/hi/29.json +9 -0
  175. package/translations/hi/30.json +9 -0
  176. package/translations/hi/31.json +9 -0
  177. package/translations/hi/32.json +9 -0
  178. package/translations/hi/33.json +9 -0
  179. package/translations/hi/34.json +9 -0
  180. package/translations/hi/35.json +9 -0
  181. package/translations/hi/36.json +9 -0
  182. package/translations/hi/37.json +9 -0
  183. package/translations/hi/38.json +9 -0
  184. package/translations/hi/39.json +9 -0
  185. package/translations/hi/4.json +9 -0
  186. package/translations/hi/40.json +9 -0
  187. package/translations/hi/41.json +9 -0
  188. package/translations/hi/42.json +9 -0
  189. package/translations/hi/43.json +9 -0
  190. package/translations/hi/44.json +9 -0
  191. package/translations/hi/45.json +9 -0
  192. package/translations/hi/46.json +9 -0
  193. package/translations/hi/47.json +9 -0
  194. package/translations/hi/48.json +9 -0
  195. package/translations/hi/49.json +9 -0
  196. package/translations/hi/5.json +9 -0
  197. package/translations/hi/6.json +9 -0
  198. package/translations/hi/7.json +9 -0
  199. package/translations/hi/8.json +9 -0
  200. package/translations/hi/9.json +9 -0
  201. package/translations/hi/demo.json +332 -0
  202. package/translations/id/demo.json +332 -0
  203. package/translations/ja/1.json +9 -0
  204. package/translations/ja/10.json +9 -0
  205. package/translations/ja/11.json +9 -0
  206. package/translations/ja/12.json +9 -0
  207. package/translations/ja/13.json +9 -0
  208. package/translations/ja/14.json +9 -0
  209. package/translations/ja/15.json +9 -0
  210. package/translations/ja/16.json +9 -0
  211. package/translations/ja/17.json +9 -0
  212. package/translations/ja/18.json +9 -0
  213. package/translations/ja/19.json +9 -0
  214. package/translations/ja/20.json +9 -0
  215. package/translations/ja/21.json +9 -0
  216. package/translations/ja/22.json +9 -0
  217. package/translations/ja/23.json +9 -0
  218. package/translations/ja/24.json +9 -0
  219. package/translations/ja/25.json +9 -0
  220. package/translations/ja/26.json +9 -0
  221. package/translations/ja/27.json +9 -0
  222. package/translations/ja/28.json +9 -0
  223. package/translations/ja/29.json +9 -0
  224. package/translations/ja/30.json +9 -0
  225. package/translations/ja/31.json +9 -0
  226. package/translations/ja/32.json +9 -0
  227. package/translations/ja/33.json +9 -0
  228. package/translations/ja/34.json +9 -0
  229. package/translations/ja/35.json +9 -0
  230. package/translations/ja/36.json +9 -0
  231. package/translations/ja/37.json +9 -0
  232. package/translations/ja/38.json +9 -0
  233. package/translations/ja/39.json +9 -0
  234. package/translations/ja/4.json +9 -0
  235. package/translations/ja/40.json +9 -0
  236. package/translations/ja/41.json +9 -0
  237. package/translations/ja/42.json +9 -0
  238. package/translations/ja/43.json +9 -0
  239. package/translations/ja/44.json +9 -0
  240. package/translations/ja/45.json +9 -0
  241. package/translations/ja/46.json +9 -0
  242. package/translations/ja/47.json +9 -0
  243. package/translations/ja/48.json +9 -0
  244. package/translations/ja/49.json +9 -0
  245. package/translations/ja/5.json +9 -0
  246. package/translations/ja/6.json +9 -0
  247. package/translations/ja/7.json +9 -0
  248. package/translations/ja/8.json +9 -0
  249. package/translations/ja/9.json +9 -0
  250. package/translations/ja/demo.json +332 -0
  251. package/translations/ko/1.json +9 -0
  252. package/translations/ko/10.json +9 -0
  253. package/translations/ko/11.json +9 -0
  254. package/translations/ko/12.json +9 -0
  255. package/translations/ko/13.json +9 -0
  256. package/translations/ko/14.json +9 -0
  257. package/translations/ko/15.json +9 -0
  258. package/translations/ko/16.json +9 -0
  259. package/translations/ko/17.json +9 -0
  260. package/translations/ko/18.json +9 -0
  261. package/translations/ko/19.json +9 -0
  262. package/translations/ko/20.json +9 -0
  263. package/translations/ko/21.json +9 -0
  264. package/translations/ko/22.json +9 -0
  265. package/translations/ko/23.json +9 -0
  266. package/translations/ko/24.json +9 -0
  267. package/translations/ko/25.json +9 -0
  268. package/translations/ko/26.json +9 -0
  269. package/translations/ko/27.json +9 -0
  270. package/translations/ko/28.json +9 -0
  271. package/translations/ko/29.json +9 -0
  272. package/translations/ko/30.json +9 -0
  273. package/translations/ko/31.json +9 -0
  274. package/translations/ko/32.json +9 -0
  275. package/translations/ko/33.json +9 -0
  276. package/translations/ko/34.json +9 -0
  277. package/translations/ko/35.json +9 -0
  278. package/translations/ko/36.json +9 -0
  279. package/translations/ko/37.json +9 -0
  280. package/translations/ko/38.json +9 -0
  281. package/translations/ko/39.json +9 -0
  282. package/translations/ko/4.json +9 -0
  283. package/translations/ko/40.json +9 -0
  284. package/translations/ko/41.json +9 -0
  285. package/translations/ko/42.json +9 -0
  286. package/translations/ko/43.json +9 -0
  287. package/translations/ko/44.json +9 -0
  288. package/translations/ko/45.json +9 -0
  289. package/translations/ko/46.json +9 -0
  290. package/translations/ko/47.json +9 -0
  291. package/translations/ko/48.json +9 -0
  292. package/translations/ko/49.json +9 -0
  293. package/translations/ko/5.json +9 -0
  294. package/translations/ko/6.json +9 -0
  295. package/translations/ko/7.json +9 -0
  296. package/translations/ko/8.json +9 -0
  297. package/translations/ko/9.json +9 -0
  298. package/translations/ko/demo.json +332 -0
  299. package/translations/pt/1.json +9 -0
  300. package/translations/pt/10.json +9 -0
  301. package/translations/pt/11.json +9 -0
  302. package/translations/pt/12.json +9 -0
  303. package/translations/pt/13.json +9 -0
  304. package/translations/pt/14.json +9 -0
  305. package/translations/pt/15.json +9 -0
  306. package/translations/pt/16.json +9 -0
  307. package/translations/pt/17.json +9 -0
  308. package/translations/pt/18.json +9 -0
  309. package/translations/pt/19.json +9 -0
  310. package/translations/pt/20.json +9 -0
  311. package/translations/pt/21.json +9 -0
  312. package/translations/pt/22.json +9 -0
  313. package/translations/pt/23.json +9 -0
  314. package/translations/pt/24.json +9 -0
  315. package/translations/pt/25.json +9 -0
  316. package/translations/pt/26.json +9 -0
  317. package/translations/pt/27.json +9 -0
  318. package/translations/pt/28.json +9 -0
  319. package/translations/pt/29.json +9 -0
  320. package/translations/pt/30.json +9 -0
  321. package/translations/pt/31.json +9 -0
  322. package/translations/pt/32.json +9 -0
  323. package/translations/pt/33.json +9 -0
  324. package/translations/pt/34.json +9 -0
  325. package/translations/pt/35.json +9 -0
  326. package/translations/pt/36.json +9 -0
  327. package/translations/pt/37.json +9 -0
  328. package/translations/pt/38.json +9 -0
  329. package/translations/pt/39.json +9 -0
  330. package/translations/pt/4.json +9 -0
  331. package/translations/pt/40.json +9 -0
  332. package/translations/pt/41.json +9 -0
  333. package/translations/pt/42.json +9 -0
  334. package/translations/pt/43.json +9 -0
  335. package/translations/pt/44.json +9 -0
  336. package/translations/pt/45.json +9 -0
  337. package/translations/pt/46.json +9 -0
  338. package/translations/pt/47.json +9 -0
  339. package/translations/pt/48.json +9 -0
  340. package/translations/pt/49.json +9 -0
  341. package/translations/pt/5.json +9 -0
  342. package/translations/pt/6.json +9 -0
  343. package/translations/pt/7.json +9 -0
  344. package/translations/pt/8.json +9 -0
  345. package/translations/pt/9.json +9 -0
  346. package/translations/pt/demo.json +332 -0
  347. package/translations/ru/1.json +9 -0
  348. package/translations/ru/10.json +9 -0
  349. package/translations/ru/11.json +9 -0
  350. package/translations/ru/12.json +9 -0
  351. package/translations/ru/13.json +9 -0
  352. package/translations/ru/14.json +9 -0
  353. package/translations/ru/15.json +9 -0
  354. package/translations/ru/16.json +9 -0
  355. package/translations/ru/17.json +9 -0
  356. package/translations/ru/18.json +9 -0
  357. package/translations/ru/19.json +9 -0
  358. package/translations/ru/20.json +9 -0
  359. package/translations/ru/21.json +9 -0
  360. package/translations/ru/22.json +9 -0
  361. package/translations/ru/23.json +9 -0
  362. package/translations/ru/24.json +9 -0
  363. package/translations/ru/25.json +9 -0
  364. package/translations/ru/26.json +9 -0
  365. package/translations/ru/27.json +9 -0
  366. package/translations/ru/28.json +9 -0
  367. package/translations/ru/29.json +9 -0
  368. package/translations/ru/30.json +9 -0
  369. package/translations/ru/31.json +9 -0
  370. package/translations/ru/32.json +9 -0
  371. package/translations/ru/33.json +9 -0
  372. package/translations/ru/34.json +9 -0
  373. package/translations/ru/35.json +9 -0
  374. package/translations/ru/36.json +9 -0
  375. package/translations/ru/37.json +9 -0
  376. package/translations/ru/38.json +9 -0
  377. package/translations/ru/39.json +9 -0
  378. package/translations/ru/4.json +9 -0
  379. package/translations/ru/40.json +9 -0
  380. package/translations/ru/41.json +9 -0
  381. package/translations/ru/42.json +9 -0
  382. package/translations/ru/43.json +9 -0
  383. package/translations/ru/44.json +9 -0
  384. package/translations/ru/45.json +9 -0
  385. package/translations/ru/46.json +9 -0
  386. package/translations/ru/47.json +9 -0
  387. package/translations/ru/48.json +9 -0
  388. package/translations/ru/49.json +9 -0
  389. package/translations/ru/5.json +9 -0
  390. package/translations/ru/6.json +9 -0
  391. package/translations/ru/7.json +9 -0
  392. package/translations/ru/8.json +9 -0
  393. package/translations/ru/9.json +9 -0
  394. package/translations/ru/demo.json +332 -0
  395. package/translations/th/demo.json +332 -0
  396. package/translations/tr/demo.json +332 -0
  397. package/translations/vi/demo.json +332 -0
  398. package/translations/zh/1.json +9 -0
  399. package/translations/zh/10.json +9 -0
  400. package/translations/zh/11.json +9 -0
  401. package/translations/zh/12.json +9 -0
  402. package/translations/zh/13.json +9 -0
  403. package/translations/zh/14.json +9 -0
  404. package/translations/zh/15.json +9 -0
  405. package/translations/zh/16.json +9 -0
  406. package/translations/zh/17.json +9 -0
  407. package/translations/zh/18.json +9 -0
  408. package/translations/zh/19.json +9 -0
  409. package/translations/zh/20.json +9 -0
  410. package/translations/zh/21.json +9 -0
  411. package/translations/zh/22.json +9 -0
  412. package/translations/zh/23.json +9 -0
  413. package/translations/zh/24.json +9 -0
  414. package/translations/zh/25.json +9 -0
  415. package/translations/zh/26.json +9 -0
  416. package/translations/zh/27.json +9 -0
  417. package/translations/zh/28.json +9 -0
  418. package/translations/zh/29.json +9 -0
  419. package/translations/zh/30.json +9 -0
  420. package/translations/zh/31.json +9 -0
  421. package/translations/zh/32.json +9 -0
  422. package/translations/zh/33.json +9 -0
  423. package/translations/zh/34.json +9 -0
  424. package/translations/zh/35.json +9 -0
  425. package/translations/zh/36.json +9 -0
  426. package/translations/zh/37.json +9 -0
  427. package/translations/zh/38.json +9 -0
  428. package/translations/zh/39.json +9 -0
  429. package/translations/zh/4.json +9 -0
  430. package/translations/zh/40.json +9 -0
  431. package/translations/zh/41.json +9 -0
  432. package/translations/zh/42.json +9 -0
  433. package/translations/zh/43.json +9 -0
  434. package/translations/zh/44.json +9 -0
  435. package/translations/zh/45.json +9 -0
  436. package/translations/zh/46.json +9 -0
  437. package/translations/zh/47.json +9 -0
  438. package/translations/zh/48.json +9 -0
  439. package/translations/zh/49.json +9 -0
  440. package/translations/zh/5.json +9 -0
  441. package/translations/zh/6.json +9 -0
  442. package/translations/zh/7.json +9 -0
  443. package/translations/zh/8.json +9 -0
  444. package/translations/zh/9.json +9 -0
  445. package/translations/zh/demo.json +332 -0
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 38,
3
+ "name": "Doors",
4
+ "category": "rev",
5
+ "translation": "Tu amigo te ha enviado una versión prototipo de un programa de verificación de clave de seguridad que está escribiendo en C#.\nHay unas pocas flags aquí, pero ¿puedes ayudar encontrando la flag que olvidó cifrar?",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:44:36.677Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 39,
3
+ "name": "Too Many Flags",
4
+ "category": "rev",
5
+ "translation": "Hemos encontrado este archivo lleno de flags pero no sabemos cuál es la flag correcta. ¿Puedes averiguar cómo estas flags fueron generadas y encontrar la flag correcta?",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:44:42.276Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 4,
3
+ "name": "#InMyLibraryClashingEra",
4
+ "category": "crypto",
5
+ "translation": "He creado una hash function ¿cómicamente simple? Encuentra una colisión y te daré la biblioteca a la que debes conducir. Es decir, si puedes leer lo que tengo. Mala mía, bebí 32 ml de Base model Dasani antes de hacer esto.\n\nPuede que se necesite pycryptodome, así que instálalo de antemano.\n\nRecuerda encapsular la flag en `pecan{flag}`.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:33:53.223Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 40,
3
+ "name": "Xanarto",
4
+ "category": "rev",
5
+ "translation": "Encontré a este tipo en LinkedIn que afirmaba haber creado un uncrackable algorithm. Demuéstrale que está equivocado. Adjunté la publicación en una imagen.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:44:51.362Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 41,
3
+ "name": "Cheese",
4
+ "category": "steg",
5
+ "translation": "Para este desafío, uno debe adentrarse en las profundidades del `image file` proporcionado como parte de la maldición del queso, usando varias herramientas para descubrir lo que algunos descartarían como texto completamente aleatorio.\n\nSi tan solo esta `string` pudiera ser manipulada o convertida de alguna manera, esta podría ser nuestra única esperanza para encontrar la `flag` y levantar la maldición del queso de una vez por todas......\n\nDisfruta :)",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:44:56.816Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 42,
3
+ "name": "Dogs Always Know",
4
+ "category": "steg",
5
+ "translation": "Los perros tienen olfato para los secretos—enterrados profundamente, donde nadie piensa buscar. Confía en sus instintos; a veces, lo que está oculto no está a simple vista, sino en los huesos debajo de la superficie.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:00.117Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 43,
3
+ "name": "In the fine print",
4
+ "category": "steg",
5
+ "translation": "Se descubrió un conjunto de documentos impresos en una ubicación no revelada. Parecen inofensivos, pero algo no cuadra...",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:03.485Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 44,
3
+ "name": "In the words of Taylor",
4
+ "category": "steg",
5
+ "translation": "Escribiré tu nombre... o, al menos una flag.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:06.541Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 45,
3
+ "name": "Layer Cake",
4
+ "category": "steg",
5
+ "translation": "No todos los pasteles son mentiras. ¡Este tiene capas!\nThe flag format is `pecan{crackedwords}`",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:09.563Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 46,
3
+ "name": "Looking through the sound",
4
+ "category": "steg",
5
+ "translation": "No todos los mensajes viajan en las ondas sonoras. Tendrás que *mirar* a través del ruido. Deja que tus ojos escuchen, y deja que la música te lo deletree. Nota: *No* necesitas escuchar el audio para hacer este challenge.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:15.684Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 47,
3
+ "name": "Nothing to See Here",
4
+ "category": "steg",
5
+ "translation": "Aquí hay un pequeño dibujo que hice. Aunque no hay nada que ver en él, como puedes ver.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:17.619Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 48,
3
+ "name": "Stuck in Your Head",
4
+ "category": "steg",
5
+ "translation": "Deberías escuchar mi canción favorita, y decirme 21 razones por las que es la mejor.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:20.607Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 49,
3
+ "name": "TLSB",
4
+ "category": "steg",
5
+ "translation": "Puede que hayas oído hablar de Least Significant Bit (LSB) Steganography, pero ¿alguna vez has oído hablar de Third Least Significant Bit (TLSB) Steganography? (Esperemos que no, ya que lo inventé para este desafío). (PISTA: Guardé el secreto en el orden de bytes de la imagen)",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:45:26.901Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 5,
3
+ "name": "Multi-layer",
4
+ "category": "crypto",
5
+ "translation": "Esta cosa tiene capas.\n\n```\nZnJpcmEgbyBmY25wciBmcmlyYSBhdmFyIGZjbnByIGZ2ayBzIGZjbnByIGZyaXJhIHN2aXIgZmNucHIgZ2piIG1yZWIgZmNucHIgZnZrIGZyaXJhIGZjbnByIGZ2ayBzIGZjbnByIGZyaXJhIHNiaGUgZmNucHIgZ2piIG1yZWIgZmNucHIgZnJpcmEgc2JoZSBmY25wciBmdmsgcnZ0dWcgZmNucHIgZnZrIGF2YXIgZmNucHIgZnJpcmEgZ3VlcnIgZmNucHIgZnJpcmEgcQ==\n```\n\nRecuerda que el formato de la flag es `pecan{flag_goes_here}`",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:34:07.715Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 6,
3
+ "name": "Mysteries of the Tomb",
4
+ "category": "crypto",
5
+ "translation": "En las profundidades sombrías del Valle de los Reyes, exploradores han desenterrado una tumba perdida en el tiempo. En su centro yace una antigua tablilla de piedra, grabada meticulosamente con glifos misteriosos—una pirámide de secretos elaborada por escribas devotos que guardan el tesoro más sagrado del faraón.\n\nA través de una cuidadosa traducción, emerge una leyenda recurrente: esta tablilla guarda la clave de un poder incalculable. Armado con tus diligentes notas y un creciente conocimiento de los símbolos, empiezas a desentrañar su críptico mensaje.\n\nHasta ahora, la inscripción en el vértice de la tablilla dice:\n\"Para desvelar la verdad, lee las piedras a la primera luz del amanecer, trazando desde la cima hasta las arenas movedizas.\"\n\nFormato: `pecan{flag}`",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:40:30.242Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 7,
3
+ "name": "RSA101",
4
+ "category": "crypto",
5
+ "translation": "Hemos recibido un mensaje que creemos que está cifrado con RSA, pero los números primos de la clave pública podrían ser débiles.\nEncuentra los factores y descifra el mensaje.\n\n```\nn = 914224879713534891752745051672415462330144197757968187295993\ne = 17\nciphertext = 152293808340616594229073242267037730353433147091103189533666\n```",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:40:39.460Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 8,
3
+ "name": "Sheet Music Cipher",
4
+ "category": "crypto",
5
+ "translation": "Nadie sabrá nunca que utilicé un Compound Motivic Musical Cipher. Puedo simplemente reproducir música en voz alta y enviar mensajes sin que nadie se dé cuenta.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:40:46.551Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 9,
3
+ "name": "That's Not My Unicode",
4
+ "category": "crypto",
5
+ "translation": "Estos extraños símbolos parecen antiguos, pero podrían estar intentando decirte algo más moderno. Reconstruye el mensaje oculto a simple vista — a veces, lo que parece antiguo puede hablar en un nuevo idioma.",
6
+ "lang": "es",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:40:54.568Z"
9
+ }
@@ -0,0 +1,332 @@
1
+ [
2
+ {
3
+ "number": 1,
4
+ "text": "¿Qué algoritmo NO es un cifrado simétrico?",
5
+ "category": "Cryptography",
6
+ "options": {
7
+ "A": "AES",
8
+ "B": "RSA",
9
+ "C": "DES",
10
+ "D": "Blowfish"
11
+ }
12
+ },
13
+ {
14
+ "number": 2,
15
+ "text": "¿Qué explota la inyección SQL?",
16
+ "category": "Web Security",
17
+ "options": {
18
+ "A": "Buffer overflow en el servidor web",
19
+ "B": "Entrada de usuario no sanitizada en las consultas de la base de datos",
20
+ "C": "Algoritmos de cifrado débiles",
21
+ "D": "Reglas de firewall mal configuradas"
22
+ }
23
+ },
24
+ {
25
+ "number": 3,
26
+ "text": "¿Qué código de estado HTTP indica \"Forbidden\"?",
27
+ "category": "Web Security",
28
+ "options": {
29
+ "A": "401",
30
+ "B": "404",
31
+ "C": "403",
32
+ "D": "500"
33
+ }
34
+ },
35
+ {
36
+ "number": 4,
37
+ "text": "¿Cuál es el propósito principal de un nonce en criptografía?",
38
+ "category": "Cryptography",
39
+ "options": {
40
+ "A": "Cifrar datos en reposo",
41
+ "B": "Prevenir ataques de replay",
42
+ "C": "Generar contraseñas aleatorias",
43
+ "D": "Comprimir datos antes del cifrado"
44
+ }
45
+ },
46
+ {
47
+ "number": 5,
48
+ "text": "¿Qué herramienta se utiliza comúnmente para la captura de paquetes de red?",
49
+ "category": "Network",
50
+ "options": {
51
+ "A": "Burp Suite",
52
+ "B": "Ghidra",
53
+ "C": "Wireshark",
54
+ "D": "John the Ripper"
55
+ }
56
+ },
57
+ {
58
+ "number": 6,
59
+ "text": "¿Qué significa XSS en ciberseguridad?",
60
+ "category": "Web Security",
61
+ "options": {
62
+ "A": "Sistema de seguridad extendido",
63
+ "B": "Cross-Site Scripting",
64
+ "C": "Socket seguro XML",
65
+ "D": "Uso compartido entre servidores"
66
+ }
67
+ },
68
+ {
69
+ "number": 7,
70
+ "text": "¿Cuál es la función principal de un firewall?",
71
+ "category": "Network",
72
+ "options": {
73
+ "A": "Cifrar los datos de la red",
74
+ "B": "Filtrar el tráfico de red basado en reglas de seguridad",
75
+ "C": "Detectar virus en archivos",
76
+ "D": "Acelerar la conexión a internet"
77
+ }
78
+ },
79
+ {
80
+ "number": 8,
81
+ "text": "¿Qué tipo de malware se disfraza de software legítimo?",
82
+ "category": "Malware",
83
+ "options": {
84
+ "A": "Gusano",
85
+ "B": "Ransomware",
86
+ "C": "Troyano",
87
+ "D": "Adware"
88
+ }
89
+ },
90
+ {
91
+ "number": 9,
92
+ "text": "¿Qué protocolo proporciona comunicación segura en la web?",
93
+ "category": "Network",
94
+ "options": {
95
+ "A": "HTTP",
96
+ "B": "FTP",
97
+ "C": "HTTPS",
98
+ "D": "SMTP"
99
+ }
100
+ },
101
+ {
102
+ "number": 10,
103
+ "text": "¿Qué es un hash criptográfico?",
104
+ "category": "Cryptography",
105
+ "options": {
106
+ "A": "Una clave de cifrado reversible",
107
+ "B": "Una función unidireccional que produce un resumen de tamaño fijo",
108
+ "C": "Un protocolo de autenticación",
109
+ "D": "Un tipo de firma digital"
110
+ }
111
+ },
112
+ {
113
+ "number": 11,
114
+ "text": "¿Qué herramienta se utiliza para el análisis de binarios?",
115
+ "category": "Reverse Engineering",
116
+ "options": {
117
+ "A": "Nmap",
118
+ "B": "SQLMap",
119
+ "C": "Ghidra",
120
+ "D": "Nikto"
121
+ }
122
+ },
123
+ {
124
+ "number": 12,
125
+ "text": "¿Qué ataque manipula las solicitudes DNS para redirigir el tráfico?",
126
+ "category": "Network",
127
+ "options": {
128
+ "A": "Phishing",
129
+ "B": "DNS Spoofing",
130
+ "C": "SQL Injection",
131
+ "D": "Brute Force"
132
+ }
133
+ },
134
+ {
135
+ "number": 13,
136
+ "text": "¿Cuál es el puerto estándar para SSH?",
137
+ "category": "Network",
138
+ "options": {
139
+ "A": "21",
140
+ "B": "22",
141
+ "C": "80",
142
+ "D": "443"
143
+ }
144
+ },
145
+ {
146
+ "number": 14,
147
+ "text": "¿Qué es la autenticación de dos factores (2FA)?",
148
+ "category": "Authentication",
149
+ "options": {
150
+ "A": "Usar dos contraseñas diferentes",
151
+ "B": "Verificar la identidad con dos tipos distintos de credenciales",
152
+ "C": "Cifrar datos dos veces",
153
+ "D": "Conectarse a través de dos redes"
154
+ }
155
+ },
156
+ {
157
+ "number": 15,
158
+ "text": "¿Qué comando de Linux muestra los puertos abiertos en un sistema?",
159
+ "category": "Linux",
160
+ "options": {
161
+ "A": "ls -la",
162
+ "B": "netstat -tulpn",
163
+ "C": "chmod 777",
164
+ "D": "cat /etc/passwd"
165
+ }
166
+ },
167
+ {
168
+ "number": 16,
169
+ "text": "¿Qué es un ataque Man-in-the-Middle (MitM)?",
170
+ "category": "Network",
171
+ "options": {
172
+ "A": "Acceder a un servidor sin autorización",
173
+ "B": "Interceptar y modificar comunicaciones entre dos partes",
174
+ "C": "Enviar múltiples solicitudes para sobrecargar un servidor",
175
+ "D": "Adivinar contraseñas por brute force"
176
+ }
177
+ },
178
+ {
179
+ "number": 17,
180
+ "text": "¿Cuál de estos es un algoritmo de hash?",
181
+ "category": "Cryptography",
182
+ "options": {
183
+ "A": "AES-256",
184
+ "B": "SHA-256",
185
+ "C": "RSA-2048",
186
+ "D": "Diffie-Hellman"
187
+ }
188
+ },
189
+ {
190
+ "number": 18,
191
+ "text": "¿Qué es el principio de mínimo privilegio?",
192
+ "category": "Security",
193
+ "options": {
194
+ "A": "Dar acceso root a todos los usuarios",
195
+ "B": "Otorgar solo los permisos necesarios para realizar una tarea",
196
+ "C": "Usar la contraseña más corta posible",
197
+ "D": "Deshabilitar todos los firewalls"
198
+ }
199
+ },
200
+ {
201
+ "number": 19,
202
+ "text": "¿Qué herramienta se utiliza comúnmente para el escaneo de puertos?",
203
+ "category": "Network",
204
+ "options": {
205
+ "A": "Wireshark",
206
+ "B": "Metasploit",
207
+ "C": "Nmap",
208
+ "D": "Hashcat"
209
+ }
210
+ },
211
+ {
212
+ "number": 20,
213
+ "text": "¿Qué es el ransomware?",
214
+ "category": "Malware",
215
+ "options": {
216
+ "A": "Software que muestra anuncios no deseados",
217
+ "B": "Software que cifra archivos y exige un pago para descifrarlos",
218
+ "C": "Software que registra las pulsaciones de teclas",
219
+ "D": "Software que se replica a través de redes"
220
+ }
221
+ },
222
+ {
223
+ "number": 21,
224
+ "text": "¿Cuál es la diferencia entre el cifrado simétrico y el asimétrico?",
225
+ "category": "Cryptography",
226
+ "options": {
227
+ "A": "El simétrico usa la misma clave para cifrar y descifrar; el asimétrico usa dos claves diferentes",
228
+ "B": "El simétrico es más lento que el asimétrico",
229
+ "C": "El asimétrico solo funciona con archivos pequeños",
230
+ "D": "No hay una diferencia significativa"
231
+ }
232
+ },
233
+ {
234
+ "number": 22,
235
+ "text": "¿Qué vulnerabilidad permite la ejecución de código arbitrario en un servidor web?",
236
+ "category": "Web Security",
237
+ "options": {
238
+ "A": "CSRF",
239
+ "B": "Ejecución remota de código (RCE)",
240
+ "C": "Clickjacking",
241
+ "D": "Open Redirect"
242
+ }
243
+ },
244
+ {
245
+ "number": 23,
246
+ "text": "¿Qué es OWASP?",
247
+ "category": "Security",
248
+ "options": {
249
+ "A": "Un sistema operativo de seguridad",
250
+ "B": "Una organización que publica estándares y guías de seguridad web",
251
+ "C": "Un tipo de firewall",
252
+ "D": "Un lenguaje de programación para seguridad"
253
+ }
254
+ },
255
+ {
256
+ "number": 24,
257
+ "text": "¿Qué comando de Linux cambia los permisos de los archivos?",
258
+ "category": "Linux",
259
+ "options": {
260
+ "A": "chown",
261
+ "B": "chmod",
262
+ "C": "chgrp",
263
+ "D": "passwd"
264
+ }
265
+ },
266
+ {
267
+ "number": 25,
268
+ "text": "¿Qué es un certificado SSL/TLS?",
269
+ "category": "Cryptography",
270
+ "options": {
271
+ "A": "Un archivo que contiene malware",
272
+ "B": "Un documento digital que verifica la identidad de un sitio web",
273
+ "C": "Una clave privada para SSH",
274
+ "D": "Un tipo de base de datos cifrada"
275
+ }
276
+ },
277
+ {
278
+ "number": 26,
279
+ "text": "¿Cuál de los siguientes es un ataque de ingeniería social?",
280
+ "category": "Security",
281
+ "options": {
282
+ "A": "Desbordamiento de búfer",
283
+ "B": "Phishing",
284
+ "C": "Inyección SQL",
285
+ "D": "Escaneo de puertos"
286
+ }
287
+ },
288
+ {
289
+ "number": 27,
290
+ "text": "¿Qué hace el comando de Linux \"grep\"?",
291
+ "category": "Linux",
292
+ "options": {
293
+ "A": "Comprime archivos",
294
+ "B": "Busca patrones de texto en archivos",
295
+ "C": "Muestra los procesos activos",
296
+ "D": "Configura la red"
297
+ }
298
+ },
299
+ {
300
+ "number": 28,
301
+ "text": "¿Qué es una VPN?",
302
+ "category": "Network",
303
+ "options": {
304
+ "A": "Un tipo de virus",
305
+ "B": "Una red privada virtual que encripta el tráfico de internet",
306
+ "C": "Un protocolo de transferencia de archivos",
307
+ "D": "Un escáner de vulnerabilidades"
308
+ }
309
+ },
310
+ {
311
+ "number": 29,
312
+ "text": "¿Qué es CSRF (Cross-Site Request Forgery)?",
313
+ "category": "Web Security",
314
+ "options": {
315
+ "A": "Un ataque que fuerza al navegador de un usuario a realizar acciones no autorizadas",
316
+ "B": "Un método de cifrado de datos",
317
+ "C": "Un tipo de escáner de red",
318
+ "D": "Una técnica de compresión de archivos"
319
+ }
320
+ },
321
+ {
322
+ "number": 30,
323
+ "text": "¿Cuál es la mejor práctica para almacenar contraseñas en una base de datos?",
324
+ "category": "Security",
325
+ "options": {
326
+ "A": "Texto plano",
327
+ "B": "Cifrado con AES",
328
+ "C": "Haseado con salt",
329
+ "D": "Codificado en Base64"
330
+ }
331
+ }
332
+ ]
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 1,
3
+ "name": "Incorrect Implementation of RSA",
4
+ "category": "crypto",
5
+ "translation": "J'ai découvert Rivest-Shamir-Aldeman, et j'ai donc créé ma propre implémentation personnalisée. Voici le message :\n\n```\nn: 16537241065399537261146800802060451995107796665337288928060948677362154976656429797729550619497788311160926523026781503470362013597201944839389519773564618679827061417896265475971561610333659217333638238386907603525565178455941971399130722191602944445714002268747028340120907894781607422707823554701443768586256913491149809410232167277063066105859165079765281480076330718726350243973636606134346374770537701812923215229226027759112780757449828410180237267791126609342382918352166823253106960191346933601235547281\ne: 5\nciphertext: [17623416832, 10510100501, 9509900499, 8587340257, 16105100000, 28153056843, 16850581551, 12166529024, 7737809375, 12762815625, 7737809375, 19254145824, 10510100501, 8587340257, 14693280768, 14693280768, 25937424601, 7737809375, 21003416576, 12166529024, 16850581551, 21924480357, 11592740743, 12166529024, 21003416576, 7737809375, 12762815625, 7737809375, 12166529024, 8587340257, 10000000000, 7737809375, 21003416576, 12166529024, 8587340257, 21003416576, 7737809375, 10000000000, 16850581551, 16105100000, 10510100501, 7737809375, 9509900499, 254803968, 19254145824, 19254145824, 345025251, 9509900499, 21003416576, 14693280768, 25937424601, 7737809375, 282475249, 282475249, 459165024, 312500000, 601692057, 30517578125]\n```",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:51:30.812Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 10,
3
+ "name": "The Perfect Breakfast",
4
+ "category": "crypto",
5
+ "translation": "Ah, le petit-déjeuner. Au moment où le soleil pointe à l'horizon, rien ne vaut l'odeur de quelque chose qui grésille sur la cuisinière. Je ne le manque jamais, non pas parce que je suis du matin, mais parce que c'est au petit-déjeuner que je trouve ma véritable vocation. Certains optent pour des céréales, d'autres pour des toasts, mais moi ? J'aime que les choses soient croustillantes.\n\nIl y a un art dans ma routine matinale. Deux œufs, légèrement coulants. Une tasse de café, noir. Et le joyau de la couronne : cette perfection fumée et salée qui ne manque jamais de me faire sourire. Mon préféré, sans aucun doute. C'est un peu indulgent, certes, mais ça vaut chaque bouchée.\n\nOn dit que le petit-déjeuner est le repas le plus important de la journée… c'est peut-être pourquoi j'y ai caché le message. Il suffit de savoir où chercher sous les couches.",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:25.443Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 11,
3
+ "name": "Wise Words",
4
+ "category": "crypto",
5
+ "translation": "J'ai un jour rencontré Auguste, le fils adoptif et l'héritier d'un grand général. Quand je lui ai demandé quelle était sa plus grande stratégie, il a simplement murmuré : Fwfo_Djqifsaa_Fwpmwf",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:28.912Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 12,
3
+ "name": "HexedHeaders",
4
+ "category": "forensics",
5
+ "translation": "Ce fichier semble contenir des secrets... Mais comment y entrer...",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:31.259Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 13,
3
+ "name": "Keylogger",
4
+ "category": "forensics",
5
+ "translation": "Après avoir senti que quelque chose n'allait pas, Ole l'a signalé à l'équipe de sécurité. L'équipe a décidé d'enquêter sur the network et a remarqué quelque chose de suspect.",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:39.513Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 14,
3
+ "name": "obfuscated script",
4
+ "category": "forensics",
5
+ "translation": "Un membre du personnel a trouvé deux fichiers étranges dans son Downloads folder : un script et un fichier qu'il ne pouvait pas lire. Pouvez-vous déterminer de quoi il s'agit ?",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:46.716Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 15,
3
+ "name": "Ping",
4
+ "category": "forensics",
5
+ "translation": "Les attaquants sont de plus en plus astucieux ces jours-ci, ils trouvent toutes sortes de moyens pour exfiltrate data!\nQu'ont-ils volé cette fois ?",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:52.685Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 16,
3
+ "name": "Sound Inversion",
4
+ "category": "forensics",
5
+ "translation": "Soldat, nous pensons que l'ennemi a caché un message audio parlé quelque part dans ce fichier. Trouvez-le, et faites votre rapport immédiatement.",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:52:59.637Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 17,
3
+ "name": "There is always a trace",
4
+ "category": "forensics",
5
+ "translation": "Vous avez été embauché par la NSA et c'est votre premier jour de travail. Pour votre première tâche, ils vous ont donné un fichier d'apparence suspecte, avec très peu de contexte, si ce n'est qu'il a été récupéré sur l'ordinateur portable d'un individu soupçonné d'avoir compromis un serveur gouvernemental à distance.",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:53:09.312Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 18,
3
+ "name": "Electric Debugger",
4
+ "category": "misc",
5
+ "translation": "Le concurrent d'autres débogueurs populaires vient de publier une nouvelle version de leur Electric debugger ce matin.\nMalheureusement, il n'est plus free ou open-source. Cependant, des rumeurs disent que des bounties sont disponibles si quelqu'un parvient à hack it.",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:53:14.039Z"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "id": 19,
3
+ "name": "Old is gold",
4
+ "category": "misc",
5
+ "translation": "L'ancien sysadmin a travaillé ici pendant près de 47 ans. Vous découvrez ce fichier sur son ancien PC...",
6
+ "lang": "fr",
7
+ "model": "gemini-3.1-pro-preview",
8
+ "timestamp": "2026-04-08T03:53:16.550Z"
9
+ }