Guest User

Untitled

a guest
Aug 24th, 2025
1,285
1
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.15 KB | None | 1 0
  1. {
  2. "nodes": [
  3. {
  4. "parameters": {
  5. "rule": {
  6. "interval": [
  7. {
  8. "triggerAtHour": 6
  9. }
  10. ]
  11. }
  12. },
  13. "name": "Daily Schedule",
  14. "type": "n8n-nodes-base.scheduleTrigger",
  15. "position": [
  16. -1520,
  17. -272
  18. ],
  19. "id": "ab1535a7-d331-4c11-b77c-3200675cffc0",
  20. "typeVersion": 1.2
  21. },
  22. {
  23. "parameters": {
  24. "assignments": {
  25. "assignments": [
  26. {
  27. "id": "a1b2c3d4-e5f6-4000-aaaa-000000000001",
  28. "name": "feeds",
  29. "type": "array",
  30. "value": "[\"https://cert.ssi.gouv.fr/feed/\", \"https://feeds.feedburner.com/TheHackersNews\", \"https://blog.cryptographyengineering.com/feed\", \"https://cybersecuritynews.com/feed/\", \"https://securityboulevard.com/feed/\"]"
  31. }
  32. ]
  33. },
  34. "options": {}
  35. },
  36. "name": "Set Feeds",
  37. "type": "n8n-nodes-base.set",
  38. "position": [
  39. -1360,
  40. -272
  41. ],
  42. "id": "db848f5b-db53-4eda-ac5a-1280166fca64",
  43. "typeVersion": 3.4
  44. },
  45. {
  46. "parameters": {
  47. "fieldToSplitOut": "feeds",
  48. "include": "allOtherFields",
  49. "options": {
  50. "includeBinary": false
  51. }
  52. },
  53. "name": "Split Feeds",
  54. "type": "n8n-nodes-base.splitOut",
  55. "position": [
  56. -1184,
  57. -272
  58. ],
  59. "id": "2e575135-337a-4f28-8068-7758b79ceb6e",
  60. "typeVersion": 1
  61. },
  62. {
  63. "parameters": {
  64. "url": "={{ $json.feeds }}",
  65. "options": {
  66. "ignoreSSL": false
  67. }
  68. },
  69. "name": "Read RSS",
  70. "type": "n8n-nodes-base.rssFeedRead",
  71. "position": [
  72. -1024,
  73. -272
  74. ],
  75. "id": "856894ee-998c-464d-8365-8d4aed01560f",
  76. "typeVersion": 1.2
  77. },
  78. {
  79. "parameters": {
  80. "conditions": {
  81. "options": {
  82. "version": 2,
  83. "leftValue": "",
  84. "caseSensitive": true,
  85. "typeValidation": "loose"
  86. },
  87. "combinator": "and",
  88. "conditions": [
  89. {
  90. "id": "cond-1",
  91. "operator": {
  92. "type": "number",
  93. "operation": "gt"
  94. },
  95. "leftValue": "={{ Date.parse($json.pubDate) }}",
  96. "rightValue": "={{ Date.now() - 24 * 60 * 60 * 1000 }}"
  97. }
  98. ]
  99. },
  100. "options": {}
  101. },
  102. "name": "If Recent?",
  103. "type": "n8n-nodes-base.if",
  104. "position": [
  105. -688,
  106. -272
  107. ],
  108. "id": "b2a7f6a1-5657-4726-a9b5-3326f7b2ee1f",
  109. "typeVersion": 2.2
  110. },
  111. {
  112. "parameters": {
  113. "type": "random"
  114. },
  115. "name": "Randomize",
  116. "type": "n8n-nodes-base.sort",
  117. "position": [
  118. -512,
  119. -352
  120. ],
  121. "id": "fc4572a4-3bb6-4912-b849-d843448805ff",
  122. "typeVersion": 1
  123. },
  124. {
  125. "parameters": {
  126. "aggregate": "aggregateAllItemData",
  127. "include": "allFieldsExcept",
  128. "options": {}
  129. },
  130. "name": "Aggregate Articles",
  131. "type": "n8n-nodes-base.aggregate",
  132. "position": [
  133. -336,
  134. -352
  135. ],
  136. "id": "8663ce2c-a885-4f5b-86d7-d8d16b8d8187",
  137. "typeVersion": 1
  138. },
  139. {
  140. "parameters": {
  141. "promptType": "define",
  142. "text": "={{ $json }}",
  143. "hasOutputParser": true,
  144. "options": {
  145. "systemMessage": "={{ 'Analyze the aggregated cybersecurity articles, enrich them with CVE details where applicable, and produce a consolidated markdown digest. Use available tools to fetch full article content and to query CVE information. Return structured markdown output suitable for email formatting.' }}"
  146. }
  147. },
  148. "name": "AI Agent",
  149. "type": "@n8n/n8n-nodes-langchain.agent",
  150. "position": [
  151. 160,
  152. -192
  153. ],
  154. "id": "1144fa12-2c24-4de7-873d-20ae206d878f",
  155. "typeVersion": 2.1
  156. },
  157. {
  158. "parameters": {
  159. "toolDescription": "Fetch full article HTML/JSON or external CVE pages when given a URL.",
  160. "url": "={{ $json.url }}",
  161. "options": {}
  162. },
  163. "name": "Fetch Article Tool",
  164. "type": "n8n-nodes-base.httpRequestTool",
  165. "position": [
  166. 144,
  167. 144
  168. ],
  169. "id": "aa6f7984-56fe-45b2-8be1-a239b7b2dd6a",
  170. "typeVersion": 4.2
  171. },
  172. {
  173. "parameters": {
  174. "description": "Use for intermediate reasoning, planning, and validation steps."
  175. },
  176. "name": "Think Tool",
  177. "type": "@n8n/n8n-nodes-langchain.toolThink",
  178. "position": [
  179. 272,
  180. 144
  181. ],
  182. "id": "edb01f0e-72af-499b-9734-54be81a6d567",
  183. "typeVersion": 1
  184. },
  185. {
  186. "parameters": {
  187. "description": "Invoke an external workflow to fetch structured CVE details for identifiers found in articles.",
  188. "workflowId": {
  189. "__rl": true,
  190. "value": "v70oqo6GVVwpSR94",
  191. "mode": "list",
  192. "cachedResultName": "Cybersecurity Newsletter"
  193. },
  194. "workflowInputs": {
  195. "mappingMode": "defineBelow",
  196. "value": {
  197. "cve": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('cve', ``, 'string') }}"
  198. },
  199. "matchingColumns": [],
  200. "schema": [
  201. {
  202. "id": "cve",
  203. "displayName": "cve",
  204. "required": false,
  205. "defaultMatch": false,
  206. "display": true,
  207. "canBeUsedToMatch": true,
  208. "type": "string",
  209. "removed": false
  210. }
  211. ],
  212. "attemptToConvertTypes": false,
  213. "convertFieldsToString": false
  214. }
  215. },
  216. "name": "Check CVE Tool",
  217. "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
  218. "position": [
  219. 496,
  220. 144
  221. ],
  222. "id": "aeebf81a-72dc-4703-aa0a-546f55d21ed6",
  223. "typeVersion": 2.2
  224. },
  225. {
  226. "parameters": {
  227. "options": {}
  228. },
  229. "name": "Gemini Model",
  230. "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
  231. "position": [
  232. 32,
  233. 144
  234. ],
  235. "id": "dff55f7f-fcc0-457c-afd9-1d5e88dfc4cc",
  236. "typeVersion": 1,
  237. "credentials": {
  238. "googlePalmApi": {
  239. "id": "1KFHMTrK4XmRAi5x",
  240. "name": "Google Gemini(PaLM) Api account"
  241. }
  242. }
  243. },
  244. {
  245. "parameters": {
  246. "mode": "markdownToHtml",
  247. "markdown": "={{ $json.output || $json.text || $json.result }}",
  248. "destinationKey": "html",
  249. "options": {}
  250. },
  251. "name": "Markdown to HTML",
  252. "type": "n8n-nodes-base.markdown",
  253. "position": [
  254. 800,
  255. -192
  256. ],
  257. "id": "cc490e6d-e3e6-4a8a-8ad2-f3060adb962b",
  258. "typeVersion": 1
  259. },
  260. {
  261. "parameters": {},
  262. "name": "No Operation",
  263. "type": "n8n-nodes-base.noOp",
  264. "position": [
  265. -512,
  266. -192
  267. ],
  268. "id": "9e532cd8-3f8c-48d3-8308-6a85468f0d45",
  269. "typeVersion": 1
  270. },
  271. {
  272. "parameters": {
  273. "content": "# Read RSS news",
  274. "height": 272,
  275. "width": 704
  276. },
  277. "type": "n8n-nodes-base.stickyNote",
  278. "position": [
  279. -1568,
  280. -384
  281. ],
  282. "typeVersion": 1,
  283. "id": "0cc04535-382a-47b8-b485-b543d8f68618",
  284. "name": "Sticky Note"
  285. },
  286. {
  287. "parameters": {
  288. "content": "# Filter recent ones\n",
  289. "height": 384,
  290. "width": 560,
  291. "color": 2
  292. },
  293. "type": "n8n-nodes-base.stickyNote",
  294. "position": [
  295. -720,
  296. -432
  297. ],
  298. "typeVersion": 1,
  299. "id": "0a1807f1-5552-439f-bd87-2b9ad7297f7e",
  300. "name": "Sticky Note1"
  301. },
  302. {
  303. "parameters": {
  304. "inputSource": "jsonExample",
  305. "jsonExample": "{\n \"cve\": \"CVE-2024-3400\"\n}"
  306. },
  307. "type": "n8n-nodes-base.executeWorkflowTrigger",
  308. "typeVersion": 1.1,
  309. "position": [
  310. -1520,
  311. 192
  312. ],
  313. "id": "d2421d45-8a52-4060-9a78-820bdd2270d4",
  314. "name": "When Executed by Another Workflow"
  315. },
  316. {
  317. "parameters": {
  318. "url": "=https://cve.circl.lu/api/cve/{{ $json.cve }}",
  319. "options": {}
  320. },
  321. "type": "n8n-nodes-base.httpRequest",
  322. "typeVersion": 4.2,
  323. "position": [
  324. -1312,
  325. 112
  326. ],
  327. "id": "0c6e3e9d-52b6-4e1f-a1ea-aa85219ffa4e",
  328. "name": "HTTP Request"
  329. },
  330. {
  331. "parameters": {
  332. "url": "=https://vulners.com/api/v3/search/lucene/?query=bulletinFamily:exploit order:published {{ $json.cve }}",
  333. "authentication": "genericCredentialType",
  334. "genericAuthType": "httpHeaderAuth",
  335. "options": {}
  336. },
  337. "type": "n8n-nodes-base.httpRequest",
  338. "typeVersion": 4.2,
  339. "position": [
  340. -1312,
  341. 288
  342. ],
  343. "id": "942f7ea2-1667-4999-b049-979b1f446e68",
  344. "name": "HTTP Request1",
  345. "credentials": {
  346. "httpHeaderAuth": {
  347. "id": "WeR8nQzbFcd1IAQH",
  348. "name": "Header Auth account"
  349. }
  350. }
  351. },
  352. {
  353. "parameters": {
  354. "mode": "combine",
  355. "combineBy": "combineByPosition",
  356. "options": {}
  357. },
  358. "type": "n8n-nodes-base.merge",
  359. "typeVersion": 3.2,
  360. "position": [
  361. -1120,
  362. 208
  363. ],
  364. "id": "c4e56559-d285-48c8-bcfe-55f2d34f69e8",
  365. "name": "Merge"
  366. },
  367. {
  368. "parameters": {
  369. "content": "# Fetch CVE Information\n",
  370. "height": 416,
  371. "width": 640,
  372. "color": 6
  373. },
  374. "type": "n8n-nodes-base.stickyNote",
  375. "position": [
  376. -1552,
  377. 32
  378. ],
  379. "typeVersion": 1,
  380. "id": "ff1f9352-8de9-4a04-ad6b-92f15fe816b8",
  381. "name": "Sticky Note2"
  382. },
  383. {
  384. "parameters": {
  385. "content": "# Generate summary\n",
  386. "height": 576,
  387. "width": 640,
  388. "color": 3
  389. },
  390. "type": "n8n-nodes-base.stickyNote",
  391. "position": [
  392. -16,
  393. -288
  394. ],
  395. "typeVersion": 1,
  396. "id": "6f659e7d-d593-4578-9cd6-bdabe56dc7cf",
  397. "name": "Sticky Note3"
  398. },
  399. {
  400. "parameters": {
  401. "content": "# Send summary\n",
  402. "height": 320,
  403. "width": 544,
  404. "color": 4
  405. },
  406. "type": "n8n-nodes-base.stickyNote",
  407. "position": [
  408. 720,
  409. -336
  410. ],
  411. "typeVersion": 1,
  412. "id": "41e6ef9a-2df7-4ca4-b98c-a4b3e2f10adc",
  413. "name": "Sticky Note4"
  414. },
  415. {
  416. "parameters": {
  417. "sendTo": "XXXXX",
  418. "subject": "=Cyber Report - n8n - {{ new Date().toLocaleDateString() }}",
  419. "message": "={{ $json.html }}",
  420. "options": {}
  421. },
  422. "type": "n8n-nodes-base.gmail",
  423. "typeVersion": 2.1,
  424. "position": [
  425. 1040,
  426. -192
  427. ],
  428. "id": "fdd280bc-3f22-41a4-9824-d5f3326f878b",
  429. "name": "Send a message",
  430. "webhookId": "0beaebb7-c5d0-4253-8a73-104d61cb7f89"
  431. },
  432. {
  433. "parameters": {
  434. "content": "## Generated with https://graplia.com\n",
  435. "height": 80,
  436. "width": 656,
  437. "color": 7
  438. },
  439. "type": "n8n-nodes-base.stickyNote",
  440. "position": [
  441. 720,
  442. 864
  443. ],
  444. "typeVersion": 1,
  445. "id": "044710bc-a323-47a8-b95e-eb7f9f859f7f",
  446. "name": "Sticky Note5"
  447. }
  448. ],
  449. "connections": {
  450. "Daily Schedule": {
  451. "main": [
  452. [
  453. {
  454. "node": "Set Feeds",
  455. "type": "main",
  456. "index": 0
  457. }
  458. ]
  459. ]
  460. },
  461. "Set Feeds": {
  462. "main": [
  463. [
  464. {
  465. "node": "Split Feeds",
  466. "type": "main",
  467. "index": 0
  468. }
  469. ]
  470. ]
  471. },
  472. "Split Feeds": {
  473. "main": [
  474. [
  475. {
  476. "node": "Read RSS",
  477. "type": "main",
  478. "index": 0
  479. }
  480. ]
  481. ]
  482. },
  483. "Read RSS": {
  484. "main": [
  485. [
  486. {
  487. "node": "If Recent?",
  488. "type": "main",
  489. "index": 0
  490. }
  491. ]
  492. ]
  493. },
  494. "If Recent?": {
  495. "main": [
  496. [
  497. {
  498. "node": "Randomize",
  499. "type": "main",
  500. "index": 0
  501. }
  502. ],
  503. [
  504. {
  505. "node": "No Operation",
  506. "type": "main",
  507. "index": 0
  508. }
  509. ]
  510. ]
  511. },
  512. "Randomize": {
  513. "main": [
  514. [
  515. {
  516. "node": "Aggregate Articles",
  517. "type": "main",
  518. "index": 0
  519. }
  520. ]
  521. ]
  522. },
  523. "Aggregate Articles": {
  524. "main": [
  525. [
  526. {
  527. "node": "AI Agent",
  528. "type": "main",
  529. "index": 0
  530. }
  531. ]
  532. ]
  533. },
  534. "AI Agent": {
  535. "main": [
  536. [
  537. {
  538. "node": "Markdown to HTML",
  539. "type": "main",
  540. "index": 0
  541. }
  542. ]
  543. ]
  544. },
  545. "Fetch Article Tool": {
  546. "ai_tool": [
  547. [
  548. {
  549. "node": "AI Agent",
  550. "type": "ai_tool",
  551. "index": 0
  552. }
  553. ]
  554. ]
  555. },
  556. "Think Tool": {
  557. "ai_tool": [
  558. [
  559. {
  560. "node": "AI Agent",
  561. "type": "ai_tool",
  562. "index": 0
  563. }
  564. ]
  565. ]
  566. },
  567. "Check CVE Tool": {
  568. "ai_tool": [
  569. [
  570. {
  571. "node": "AI Agent",
  572. "type": "ai_tool",
  573. "index": 0
  574. }
  575. ]
  576. ]
  577. },
  578. "Gemini Model": {
  579. "ai_languageModel": [
  580. [
  581. {
  582. "node": "AI Agent",
  583. "type": "ai_languageModel",
  584. "index": 0
  585. }
  586. ]
  587. ]
  588. },
  589. "Markdown to HTML": {
  590. "main": [
  591. [
  592. {
  593. "node": "Send a message",
  594. "type": "main",
  595. "index": 0
  596. }
  597. ]
  598. ]
  599. },
  600. "When Executed by Another Workflow": {
  601. "main": [
  602. [
  603. {
  604. "node": "HTTP Request",
  605. "type": "main",
  606. "index": 0
  607. },
  608. {
  609. "node": "HTTP Request1",
  610. "type": "main",
  611. "index": 0
  612. }
  613. ]
  614. ]
  615. },
  616. "HTTP Request": {
  617. "main": [
  618. [
  619. {
  620. "node": "Merge",
  621. "type": "main",
  622. "index": 0
  623. }
  624. ]
  625. ]
  626. },
  627. "HTTP Request1": {
  628. "main": [
  629. [
  630. {
  631. "node": "Merge",
  632. "type": "main",
  633. "index": 1
  634. }
  635. ]
  636. ]
  637. }
  638. },
  639. "pinData": {
  640. "When Executed by Another Workflow": [
  641. {
  642. "cve": "CVE-2025-8671"
  643. }
  644. ]
  645. },
  646. "meta": {
  647. "templateCredsSetupCompleted": true,
  648. "instanceId": "d97c901d38f1c8088e63b14f140d53ab62d40996d7fd198c6c6e51596c6e87b5"
  649. }
  650. }
Advertisement
Add Comment
Please, Sign In to add comment