txt2stix 1.1.6__tar.gz → 1.1.8__tar.gz

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 (262) hide show
  1. {txt2stix-1.1.6 → txt2stix-1.1.8}/PKG-INFO +2 -1
  2. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/extractions/ai/config.yaml +61 -61
  3. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/extractions/lookup/config.yaml +29 -29
  4. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/extractions/pattern/config.yaml +44 -44
  5. {txt2stix-1.1.6 → txt2stix-1.1.8}/pyproject.toml +2 -1
  6. {txt2stix-1.1.6 → txt2stix-1.1.8}/requirements.txt +63 -5
  7. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_retriever.py +9 -5
  8. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/utils.py +4 -1
  9. {txt2stix-1.1.6 → txt2stix-1.1.8}/.env.example +0 -0
  10. {txt2stix-1.1.6 → txt2stix-1.1.8}/.env.markdown +0 -0
  11. {txt2stix-1.1.6 → txt2stix-1.1.8}/.github/workflows/create-release.yml +0 -0
  12. {txt2stix-1.1.6 → txt2stix-1.1.8}/.github/workflows/run-tests.yml +0 -0
  13. {txt2stix-1.1.6 → txt2stix-1.1.8}/.gitignore +0 -0
  14. {txt2stix-1.1.6 → txt2stix-1.1.8}/LICENSE +0 -0
  15. {txt2stix-1.1.6 → txt2stix-1.1.8}/README.md +0 -0
  16. {txt2stix-1.1.6 → txt2stix-1.1.8}/docs/README.md +0 -0
  17. {txt2stix-1.1.6 → txt2stix-1.1.8}/docs/stix-mapping.md +0 -0
  18. {txt2stix-1.1.6 → txt2stix-1.1.8}/docs/txt2stix.png +0 -0
  19. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/__init__.py +0 -0
  20. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/helpers/mimetype_filename_extension_list.csv +0 -0
  21. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/helpers/stix_relationship_types.txt +0 -0
  22. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/helpers/tlds.txt +0 -0
  23. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/helpers/windows_registry_key_prefix.txt +0 -0
  24. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/_README.md +0 -0
  25. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/_generate_lookups.py +0 -0
  26. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/attack_pattern.txt +0 -0
  27. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/campaign.txt +0 -0
  28. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/country_iso3166_alpha2.txt +0 -0
  29. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/course_of_action.txt +0 -0
  30. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/disarm_id_v1_5.txt +0 -0
  31. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/disarm_name_v1_5.txt +0 -0
  32. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/extensions.txt +0 -0
  33. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/identity.txt +0 -0
  34. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/infrastructure.txt +0 -0
  35. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/intrusion_set.txt +0 -0
  36. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/malware.txt +0 -0
  37. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_atlas_id_v4_5_2.txt +0 -0
  38. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_atlas_name_v4_5_2.txt +0 -0
  39. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_enterprise_aliases_v16_0.txt +0 -0
  40. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_enterprise_id_v16_0.txt +0 -0
  41. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_enterprise_name_v16_0.txt +0 -0
  42. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_ics_aliases_v16_0.txt +0 -0
  43. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_ics_id_v16_0.txt +0 -0
  44. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_ics_name_v16_0.txt +0 -0
  45. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_mobile_aliases_v16_0.txt +0 -0
  46. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_mobile_id_v16_0.txt +0 -0
  47. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_attack_mobile_name_v16_0.txt +0 -0
  48. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_capec_id_v3_9.txt +0 -0
  49. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_capec_name_v3_9.txt +0 -0
  50. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_cwe_id_v4_15.txt +0 -0
  51. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/mitre_cwe_name_v4_15.txt +0 -0
  52. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/threat_actor.txt +0 -0
  53. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/tld.txt +0 -0
  54. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/lookups/tool.txt +0 -0
  55. {txt2stix-1.1.6 → txt2stix-1.1.8}/includes/tests/test_cases.yaml +0 -0
  56. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/README.md +0 -0
  57. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_country.txt +0 -0
  58. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_mitre_attack_enterprise.txt +0 -0
  59. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_mitre_attack_ics.txt +0 -0
  60. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_mitre_attack_mobile.txt +0 -0
  61. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_mitre_capec.txt +0 -0
  62. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/ai_mitre_cwe.txt +0 -0
  63. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/all_cases.txt +0 -0
  64. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_autonomous_system_number.txt +0 -0
  65. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_all.txt +0 -0
  66. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_amex.txt +0 -0
  67. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_diners.txt +0 -0
  68. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_discover.txt +0 -0
  69. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_jcb.txt +0 -0
  70. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_mastercard.txt +0 -0
  71. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_union_pay.txt +0 -0
  72. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_bank_card_visa.txt +0 -0
  73. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_country_alpha2.txt +0 -0
  74. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cpe_uri.txt +0 -0
  75. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_btc_transaction.txt +0 -0
  76. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_btc_wallet.txt +0 -0
  77. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_eth_transaction.txt +0 -0
  78. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_eth_wallet.txt +0 -0
  79. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_xmr_transaction.txt +0 -0
  80. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cryptocurrency_xmr_wallet.txt +0 -0
  81. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_cve_id.txt +0 -0
  82. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_directory_unix.txt +0 -0
  83. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_directory_unix_file.txt +0 -0
  84. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_directory_windows.txt +0 -0
  85. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_directory_windows_with_file.txt +0 -0
  86. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_disarm.txt +0 -0
  87. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_disarm_name.txt +0 -0
  88. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_domain_name_only.txt +0 -0
  89. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_domain_name_subdomain.txt +0 -0
  90. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_email_address.txt +0 -0
  91. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_md5.txt +0 -0
  92. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_sha_1.txt +0 -0
  93. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_sha_224.txt +0 -0
  94. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_sha_256.txt +0 -0
  95. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_sha_384.txt +0 -0
  96. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_hash_sha_512.txt +0 -0
  97. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_file_name.txt +0 -0
  98. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_host_name.txt +0 -0
  99. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_host_name_file.txt +0 -0
  100. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_host_name_path.txt +0 -0
  101. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_host_name_subdomain.txt +0 -0
  102. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_host_name_url.txt +0 -0
  103. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_iban_number.txt +0 -0
  104. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv4_address_cidr.txt +0 -0
  105. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv4_address_only.txt +0 -0
  106. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv4_address_port.txt +0 -0
  107. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv6_address_cidr.txt +0 -0
  108. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv6_address_only.txt +0 -0
  109. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_ipv6_address_port.txt +0 -0
  110. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mac_address.txt +0 -0
  111. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_atlas.txt +0 -0
  112. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_atlas_name.txt +0 -0
  113. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_enterprise.txt +0 -0
  114. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_enterprise_aliases.txt +0 -0
  115. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_enterprise_name.txt +0 -0
  116. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_ics.txt +0 -0
  117. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_ics_aliases.txt +0 -0
  118. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_ics_name.txt +0 -0
  119. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_mobile.txt +0 -0
  120. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_mobile_aliases.txt +0 -0
  121. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_attack_mobile_name.txt +0 -0
  122. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_capec.txt +0 -0
  123. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_capec_name.txt +0 -0
  124. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_cwe.txt +0 -0
  125. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_mitre_cwe_name.txt +0 -0
  126. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_phone_number.txt +0 -0
  127. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_url.txt +0 -0
  128. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_url_file.txt +0 -0
  129. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_url_path.txt +0 -0
  130. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_user_agent.txt +0 -0
  131. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/generic_windows_registry_key.txt +0 -0
  132. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_attack_pattern.txt +0 -0
  133. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_campaign.txt +0 -0
  134. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_course_of_action.txt +0 -0
  135. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_identity.txt +0 -0
  136. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_infrastructure.txt +0 -0
  137. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_intrusion_set.txt +0 -0
  138. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_malware.txt +0 -0
  139. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_threat_actor.txt +0 -0
  140. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/extraction_types/lookup_tool.txt +0 -0
  141. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/ai_index_position.txt +0 -0
  142. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/attack_flow_demo.txt +0 -0
  143. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/attack_navigator_demo.txt +0 -0
  144. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/bad_vulmatch_lookups.txt +0 -0
  145. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/basic_relationship.txt +0 -0
  146. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/char_length_too_long.txt +0 -0
  147. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/descriptive_for_ai_relationships_1.txt +0 -0
  148. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/disarm_demo.txt +0 -0
  149. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/embedded_img_ignore.txt +0 -0
  150. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/embedded_link_ignore.txt +0 -0
  151. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/ip1.txt +0 -0
  152. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/ip2.txt +0 -0
  153. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/known_whitelist_match.txt +0 -0
  154. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/mitre_attack_enterprise_ai_demo.txt +0 -0
  155. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/mitre_attack_enterprise_lookup_demo.txt +0 -0
  156. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/mixed_extractions.txt +0 -0
  157. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/not_security_content.txt +0 -0
  158. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/test_ai_hash_error_with_stix2_lib.txt +0 -0
  159. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/test_aliases.txt +0 -0
  160. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/test_extraction_boundary.txt +0 -0
  161. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/manually_generated_reports/test_extraction_escapes.txt +0 -0
  162. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/APT28-Center-of-Storm-2017.txt +0 -0
  163. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/Bitdefender-Labs-Report-X-creat6958-en-EN.txt +0 -0
  164. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/FireEyeAPT39.txt +0 -0
  165. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/France_CERT_APT31_Pakdoor_TLPWHITE.txt +0 -0
  166. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/Group-IB_Ransomware_Uncovered_whitepaper_eng.txt +0 -0
  167. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/JOINT_CSA_HUNTING_RU_INTEL_SNAKE_MALWARE_20230509.txt +0 -0
  168. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/TA22-0126-QAKBOT-analysis-TLP-GREEN.txt +0 -0
  169. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/dinners_card.txt +0 -0
  170. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/mandiant-apt1.txt +0 -0
  171. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/data/real_intel_reports/mykings_report_final.txt +0 -0
  172. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/manual-tests/cases-ai-relationships.md +0 -0
  173. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/manual-tests/cases-extraction-type-ai.md +0 -0
  174. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/manual-tests/cases-extraction-type-lookup.md +0 -0
  175. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/manual-tests/cases-extraction-type-pattern.md +0 -0
  176. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/manual-tests/cases-standard-tests.md +0 -0
  177. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/scripts/generate_simple_extraction_test_cases_txt_files.py +0 -0
  178. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/__init__.py +0 -0
  179. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_attack_flow.py +0 -0
  180. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_bundler.py +0 -0
  181. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_extractors.py +0 -0
  182. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_indicator.py +0 -0
  183. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_lookups.py +0 -0
  184. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_main.py +0 -0
  185. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_run_txt2stix.py +0 -0
  186. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/test_utils.py +0 -0
  187. {txt2stix-1.1.6 → txt2stix-1.1.8}/tests/src/utils.py +0 -0
  188. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/__init__.py +0 -0
  189. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/__init__.py +0 -0
  190. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/anthropic.py +0 -0
  191. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/base.py +0 -0
  192. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/deepseek.py +0 -0
  193. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/gemini.py +0 -0
  194. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/openai.py +0 -0
  195. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/openrouter.py +0 -0
  196. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/ai_extractor/prompts.py +0 -0
  197. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/attack_flow.py +0 -0
  198. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/bundler.py +0 -0
  199. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/common.py +0 -0
  200. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/credential_checker.py +0 -0
  201. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/extractions.py +0 -0
  202. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/indicator.py +0 -0
  203. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/lookups.py +0 -0
  204. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/__init__.py +0 -0
  205. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/__init__.py +0 -0
  206. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/base_extractor.py +0 -0
  207. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/README.md +0 -0
  208. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/__init__.py +0 -0
  209. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/amex_card_extractor.py +0 -0
  210. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/diners_card_extractor.py +0 -0
  211. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/discover_card_extractor.py +0 -0
  212. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/jcb_card_extractor.py +0 -0
  213. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/master_card_extractor.py +0 -0
  214. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/union_card_extractor.py +0 -0
  215. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/card/visa_card_extractor.py +0 -0
  216. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/crypto/__init__.py +0 -0
  217. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/crypto/btc_extractor.py +0 -0
  218. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/directory/__init__.py +0 -0
  219. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/directory/unix_directory_extractor.py +0 -0
  220. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/directory/unix_file_path_extractor.py +0 -0
  221. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/directory/windows_directory_path_extractor.py +0 -0
  222. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/directory/windows_file_path_extractor.py +0 -0
  223. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/domain/__init__.py +0 -0
  224. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/domain/domain_extractor.py +0 -0
  225. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/domain/hostname_extractor.py +0 -0
  226. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/domain/sub_domain_extractor.py +0 -0
  227. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/__init__.py +0 -0
  228. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/md5_extractor.py +0 -0
  229. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha1_extractor.py +0 -0
  230. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha224_extractor.py +0 -0
  231. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha2_256_exactor.py +0 -0
  232. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha2_512_exactor.py +0 -0
  233. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha3_256_exactor.py +0 -0
  234. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/hashes/sha3_512_exactor.py +0 -0
  235. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/helper.py +0 -0
  236. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/__init__.py +0 -0
  237. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv4_cidr_extractor.py +0 -0
  238. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv4_extractor.py +0 -0
  239. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv4_port_extractor.py +0 -0
  240. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv6_cidr_extractor.py +0 -0
  241. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv6_extractor.py +0 -0
  242. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/ip/ipv6_port_extractor.py +0 -0
  243. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/__init__.py +0 -0
  244. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/asn_extractor.py +0 -0
  245. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/cpe_extractor.py +0 -0
  246. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/cve_extractor.py +0 -0
  247. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/email_extractor.py +0 -0
  248. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/filename_extractor.py +0 -0
  249. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/iban_extractor.py +0 -0
  250. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/mac_address_extractor.py +0 -0
  251. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/phonenumber_extractor.py +0 -0
  252. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/user_agent_extractor.py +0 -0
  253. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/others/windows_registry_key_extractor.py +0 -0
  254. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/url/__init__.py +0 -0
  255. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/url/url_extractor.py +0 -0
  256. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/url/url_file_extractor.py +0 -0
  257. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/pattern/extractors/url/url_path_extractor.py +0 -0
  258. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/retriever.py +0 -0
  259. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/stix.py +0 -0
  260. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/txt2stix.py +0 -0
  261. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix/utils.py +0 -0
  262. {txt2stix-1.1.6 → txt2stix-1.1.8}/txt2stix.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: txt2stix
3
- Version: 1.1.6
3
+ Version: 1.1.8
4
4
  Summary: txt2stix is a Python script that is designed to identify and extract IoCs and TTPs from text files, identify the relationships between them, convert them to STIX 2.1 objects, and output as a STIX 2.1 bundle.
5
5
  Project-URL: Homepage, https://github.com/muchdogesec/txt2stix
6
6
  Project-URL: Issues, https://github.com/muchdogesec/txt2stix/issues
@@ -14,6 +14,7 @@ Classifier: Programming Language :: Python :: 3
14
14
  Requires-Python: >=3.9
15
15
  Requires-Dist: base58>=2.1.1
16
16
  Requires-Dist: beautifulsoup4>=4.12.3
17
+ Requires-Dist: json-repair
17
18
  Requires-Dist: llama-index-core>=0.12.42
18
19
  Requires-Dist: llama-index-llms-openai>=0.4.5
19
20
  Requires-Dist: mistune>=3.0.2
@@ -10,7 +10,7 @@ ai_ipv4_address_only:
10
10
  notes: 'pattern_ipv4_address_only legacy extraction also exists if you cannot use AI'
11
11
  created: 2020-01-01
12
12
  modified: 2020-01-01
13
- created_by: DOGESEC
13
+ created_by: dogesec
14
14
  version: 1.0.0
15
15
  prompt_base: 'Extract all IPv4 addresses from the text.'
16
16
  prompt_helper: 'Do not include any IPv4s that contain a port or CIDR.'
@@ -26,7 +26,7 @@ ai_ipv4_address_cidr:
26
26
  notes: 'pattern_ipv4_address_cidr legacy extraction also exists if you cannot use AI'
27
27
  created: 2020-01-01
28
28
  modified: 2020-01-01
29
- created_by: DOGESEC
29
+ created_by: dogesec
30
30
  version: 1.0.0
31
31
  prompt_base: 'Extract all IPv4 addresses with a CIDR from the text. CIDR part must be >=0 <=32.'
32
32
  prompt_helper: 'Do not include any IPs that do not have a CIDR.'
@@ -42,7 +42,7 @@ ai_ipv4_address_port:
42
42
  notes: 'pattern_ipv4_address_port legacy extraction also exists if you cannot use AI'
43
43
  created: 2020-01-01
44
44
  modified: 2020-01-01
45
- created_by: DOGESEC
45
+ created_by: dogesec
46
46
  version: 1.0.0
47
47
  prompt_base: 'Extract all IPv4 addresses with a port from the text. Port number part must be >=0 <=65535.'
48
48
  prompt_helper: 'Do not include any IPv4s that do not contain a port number.'
@@ -60,7 +60,7 @@ ai_ipv6_address_only:
60
60
  notes: 'pattern_ipv6_address_only legacy extraction also exists if you cannot use AI'
61
61
  created: 2020-01-01
62
62
  modified: 2020-01-01
63
- created_by: DOGESEC
63
+ created_by: dogesec
64
64
  version: 1.0.0
65
65
  prompt_base: 'Extract all IPv6 addresses from the text.'
66
66
  prompt_helper: 'Do not include any IPv6s that contain a port or CIDR.'
@@ -76,7 +76,7 @@ ai_ipv6_address_cidr:
76
76
  notes: 'pattern_ipv6_address_cidr legacy extraction also exists if you cannot use AI'
77
77
  created: 2020-01-01
78
78
  modified: 2020-01-01
79
- created_by: DOGESEC
79
+ created_by: dogesec
80
80
  version: 1.0.0
81
81
  prompt_base: 'Extract all IPv6 addresses with a CIDR from the text. CIDR part must be >=0 <=128.'
82
82
  prompt_helper: 'Do not include any IPv6s that do not contain a CIDR'
@@ -92,7 +92,7 @@ ai_ipv6_address_port:
92
92
  notes: 'pattern_ipv6_address_port legacy extraction also exists if you cannot use AI'
93
93
  created: 2020-01-01
94
94
  modified: 2020-01-01
95
- created_by: DOGESEC
95
+ created_by: dogesec
96
96
  version: 1.0.0
97
97
  prompt_base: 'Extract all IPv6 addresses with a CIDR from the text. Port number part must be >=0 <=65535.'
98
98
  prompt_helper: 'Do not include any IPv6s that do not contain a port number'
@@ -110,7 +110,7 @@ ai_domain_name_only:
110
110
  notes: 'pattern_domain_name_only legacy extraction also exists if you cannot use AI'
111
111
  created: 2020-01-01
112
112
  modified: 2020-01-01
113
- created_by: DOGESEC
113
+ created_by: dogesec
114
114
  version: 1.0.0
115
115
  prompt_base: 'Extract all valid root domain names from the text. Do not extract subdomains.'
116
116
  prompt_helper: ''
@@ -126,7 +126,7 @@ ai_domain_name_subdomain:
126
126
  notes: 'pattern_domain_name_subdomain legacy extraction also exists if you cannot use AI'
127
127
  created: 2020-01-01
128
128
  modified: 2020-01-01
129
- created_by: DOGESEC
129
+ created_by: dogesec
130
130
  version: 1.0.0
131
131
  prompt_base: 'Extract all valid subdomain names from the text. Do not extract root domains.'
132
132
  prompt_helper: ''
@@ -144,7 +144,7 @@ ai_url:
144
144
  notes: 'pattern_url legacy extraction also exists if you cannot use AI'
145
145
  created: 2020-01-01
146
146
  modified: 2020-01-01
147
- created_by: DOGESEC
147
+ created_by: dogesec
148
148
  version: 1.0.0
149
149
  prompt_base: 'Extract all URLs with no path/file extension from the text. If the sub/domain part is not an IP, then it must have a valid TLD.'
150
150
  prompt_helper: ''
@@ -160,7 +160,7 @@ ai_url_file:
160
160
  notes: 'pattern_url_file legacy extraction also exists if you cannot use AI'
161
161
  created: 2020-01-01
162
162
  modified: 2020-01-01
163
- created_by: DOGESEC
163
+ created_by: dogesec
164
164
  version: 1.0.0
165
165
  prompt_base: 'Extract all URLs with file extension in path from the text. If the sub/domain part is not an IP, then it must have a valid TLD. The file must match valid filetype.'
166
166
  prompt_helper: ''
@@ -176,7 +176,7 @@ ai_url_path:
176
176
  notes: 'pattern_url_path legacy extraction also exists if you cannot use AI'
177
177
  created: 2020-01-01
178
178
  modified: 2020-01-01
179
- created_by: DOGESEC
179
+ created_by: dogesec
180
180
  version: 1.0.0
181
181
  prompt_base: 'Extract all URLs without a file extension in their path from the text. If the sub/domain part is not an IP, then it must have a valid TLD.'
182
182
  prompt_helper: ''
@@ -194,7 +194,7 @@ ai_host_name:
194
194
  notes: 'pattern_host_name legacy extraction also exists if you cannot use AI'
195
195
  created: 2020-01-01
196
196
  modified: 2020-01-01
197
- created_by: DOGESEC
197
+ created_by: dogesec
198
198
  version: 1.0.0
199
199
  prompt_base: 'Extract all hostnames from the text. Hostnames should not have a valid TLD extension (these are domains).'
200
200
  prompt_helper: ''
@@ -210,7 +210,7 @@ ai_host_name_subdomain:
210
210
  notes: 'pattern_host_name_subdomain legacy extraction also exists if you cannot use AI'
211
211
  created: 2020-01-01
212
212
  modified: 2020-01-01
213
- created_by: DOGESEC
213
+ created_by: dogesec
214
214
  version: 1.0.0
215
215
  prompt_base: 'Extract all sub-hostnames from the text. Sub-hostnames should not have a valid TLD extension.'
216
216
  prompt_helper: ''
@@ -226,7 +226,7 @@ ai_host_name_url:
226
226
  notes: 'pattern_host_name_url legacy extraction also exists if you cannot use AI'
227
227
  created: 2020-01-01
228
228
  modified: 2020-01-01
229
- created_by: DOGESEC
229
+ created_by: dogesec
230
230
  version: 1.0.0
231
231
  prompt_base: 'Extract all hostnames / sub-hostnames with full URLs from the text. All extractions should not have a valid TLD extension.'
232
232
  prompt_helper: ''
@@ -242,7 +242,7 @@ ai_host_name_file:
242
242
  notes: 'pattern_host_name_file legacy extraction also exists if you cannot use AI'
243
243
  created: 2020-01-01
244
244
  modified: 2020-01-01
245
- created_by: DOGESEC
245
+ created_by: dogesec
246
246
  version: 1.0.0
247
247
  prompt_base: 'Extract all hostnames / sub-hostnames with full URLs from the text that contain a path to a valid file extension. All extractions should not have a valid TLD extension. All file extensions should be valid file extensions.'
248
248
  prompt_helper: ''
@@ -258,7 +258,7 @@ ai_host_name_path:
258
258
  notes: 'pattern_host_name_path legacy extraction also exists if you cannot use AI'
259
259
  created: 2020-01-01
260
260
  modified: 2020-01-01
261
- created_by: DOGESEC
261
+ created_by: dogesec
262
262
  version: 1.0.0
263
263
  prompt_base: 'Extract all hostnames / sub-hostnames with full URLs (but do not contain a path to a file) from the text that. All extractions should not have a valid TLD extension. All file extensions should be valid file extensions.'
264
264
  prompt_helper: ''
@@ -276,7 +276,7 @@ ai_directory_windows:
276
276
  notes: 'pattern_directory_windows legacy extraction also exists if you cannot use AI'
277
277
  created: 2020-01-01
278
278
  modified: 2020-01-01
279
- created_by: DOGESEC
279
+ created_by: dogesec
280
280
  version: 1.0.0
281
281
  prompt_base: 'Extract all Windows directory paths from the text.'
282
282
  prompt_helper: ''
@@ -292,7 +292,7 @@ ai_directory_windows_with_file:
292
292
  notes: 'pattern_directory_windows_with_file legacy extraction also exists if you cannot use AI'
293
293
  created: 2020-01-01
294
294
  modified: 2020-01-01
295
- created_by: DOGESEC
295
+ created_by: dogesec
296
296
  version: 1.0.0
297
297
  prompt_base: 'Extract all Windows directory paths from the text that contain a path to a file. Ensure the file type extension is valid.'
298
298
  prompt_helper: ''
@@ -308,7 +308,7 @@ ai_directory_unix:
308
308
  notes: 'pattern_directory_unix legacy extraction also exists if you cannot use AI'
309
309
  created: 2020-01-01
310
310
  modified: 2020-01-01
311
- created_by: DOGESEC
311
+ created_by: dogesec
312
312
  version: 1.0.0
313
313
  prompt_base: 'Extract all UNIX directory paths from the text.'
314
314
  prompt_helper: ''
@@ -324,7 +324,7 @@ ai_directory_unix_file:
324
324
  notes: 'pattern_directory_unix_file legacy extraction also exists if you cannot use AI'
325
325
  created: 2020-01-01
326
326
  modified: 2020-01-01
327
- created_by: DOGESEC
327
+ created_by: dogesec
328
328
  version: 1.0.0
329
329
  prompt_base: 'Extract all UNIX directory paths from the text that contain a path to a file. Ensure the file type extension is valid.'
330
330
  prompt_helper: ''
@@ -342,7 +342,7 @@ ai_file_name:
342
342
  notes: 'pattern_file_name legacy extraction also exists if you cannot use AI'
343
343
  created: 2020-01-01
344
344
  modified: 2020-01-01
345
- created_by: DOGESEC
345
+ created_by: dogesec
346
346
  version: 1.0.0
347
347
  prompt_base: 'Extract all file names from the text. Ensure the file type extension is valid.'
348
348
  prompt_helper: ''
@@ -358,7 +358,7 @@ ai_file_hash_all:
358
358
  notes: ''
359
359
  created: 2020-01-01
360
360
  modified: 2020-01-01
361
- created_by: DOGESEC
361
+ created_by: dogesec
362
362
  version: 1.0.0
363
363
  prompt_base: 'Extract all MD5, SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512 file hashes from the text.'
364
364
  prompt_helper: ''
@@ -374,7 +374,7 @@ ai_file_hash_md5:
374
374
  notes: 'pattern_file_hash_md5 legacy extraction also exists if you cannot use AI'
375
375
  created: 2020-01-01
376
376
  modified: 2020-01-01
377
- created_by: DOGESEC
377
+ created_by: dogesec
378
378
  version: 1.0.0
379
379
  prompt_base: 'Extract all MD5 hashes from the text.'
380
380
  prompt_helper: ''
@@ -390,7 +390,7 @@ ai_file_hash_sha_1:
390
390
  notes: 'pattern_file_hash_sha_1 legacy extraction also exists if you cannot use AI'
391
391
  created: 2020-01-01
392
392
  modified: 2020-01-01
393
- created_by: DOGESEC
393
+ created_by: dogesec
394
394
  version: 1.0.0
395
395
  prompt_base: 'Extract all SHA-1 hashes from the text.'
396
396
  prompt_helper: ''
@@ -406,7 +406,7 @@ ai_file_hash_sha_256:
406
406
  notes: 'pattern_file_hash_sha_256 legacy extraction also exists if you cannot use AI'
407
407
  created: 2020-01-01
408
408
  modified: 2020-01-01
409
- created_by: DOGESEC
409
+ created_by: dogesec
410
410
  version: 1.0.0
411
411
  prompt_base: 'Extract all SHA-256 hashes from the text.'
412
412
  prompt_helper: ''
@@ -422,7 +422,7 @@ ai_file_hash_sha_512:
422
422
  notes: 'pattern_file_hash_sha_512 legacy extraction also exists if you cannot use AI'
423
423
  created: 2020-01-01
424
424
  modified: 2020-01-01
425
- created_by: DOGESEC
425
+ created_by: dogesec
426
426
  version: 1.0.0
427
427
  prompt_base: 'Extract all SHA-512 hashes from the text.'
428
428
  prompt_helper: ''
@@ -440,7 +440,7 @@ ai_email_address:
440
440
  notes: 'pattern_email_address legacy extraction also exists if you cannot use AI'
441
441
  created: 2020-01-01
442
442
  modified: 2020-01-01
443
- created_by: DOGESEC
443
+ created_by: dogesec
444
444
  version: 1.0.0
445
445
  prompt_base: 'Extract all email addresses from the text.'
446
446
  prompt_helper: ''
@@ -458,7 +458,7 @@ ai_mac_address:
458
458
  notes: 'pattern_mac_address legacy extraction also exists if you cannot use AI'
459
459
  created: 2020-01-01
460
460
  modified: 2020-01-01
461
- created_by: DOGESEC
461
+ created_by: dogesec
462
462
  version: 1.0.0
463
463
  prompt_base: 'Extract all MAC addresses from the text.'
464
464
  prompt_helper: ''
@@ -476,7 +476,7 @@ ai_windows_registry_key:
476
476
  notes: 'pattern_windows_registry_key legacy extraction also exists if you cannot use AI'
477
477
  created: 2020-01-01
478
478
  modified: 2020-01-01
479
- created_by: DOGESEC
479
+ created_by: dogesec
480
480
  version: 1.0.0
481
481
  prompt_base: 'Extract all Windows Registry Keys from the text.'
482
482
  prompt_helper: ''
@@ -494,7 +494,7 @@ ai_user_agent:
494
494
  notes: 'pattern_user_agent legacy extraction also exists if you cannot use AI'
495
495
  created: 2020-01-01
496
496
  modified: 2020-01-01
497
- created_by: DOGESEC
497
+ created_by: dogesec
498
498
  version: 1.0.0
499
499
  prompt_base: 'Extract all user agents from the text.'
500
500
  prompt_helper: ''
@@ -512,7 +512,7 @@ ai_autonomous_system_number:
512
512
  notes: 'pattern_user_agent legacy extraction also exists if you cannot use AI'
513
513
  created: 2020-01-01
514
514
  modified: 2020-01-01
515
- created_by: DOGESEC
515
+ created_by: dogesec
516
516
  version: 1.0.0
517
517
  prompt_base: 'Autonomous System Numbers (ASN)'
518
518
  prompt_helper: ''
@@ -530,7 +530,7 @@ ai_cryptocurrency_btc_wallet:
530
530
  notes: 'pattern_cryptocurrency_btc_wallet legacy extraction also exists if you cannot use AI'
531
531
  created: 2020-01-01
532
532
  modified: 2020-01-01
533
- created_by: DOGESEC
533
+ created_by: dogesec
534
534
  version: 1.0.0
535
535
  prompt_base: 'Extract all Bitcoin Wallet hashes from the text.'
536
536
  prompt_helper: ''
@@ -546,7 +546,7 @@ ai_cryptocurrency_btc_wallet_transaction:
546
546
  notes: 'pattern_cryptocurrency_btc_wallet_transaction legacy extraction also exists if you cannot use AI'
547
547
  created: 2020-01-01
548
548
  modified: 2020-01-01
549
- created_by: DOGESEC
549
+ created_by: dogesec
550
550
  version: 1.0.0
551
551
  prompt_base: 'Extract all Bitcoin transaction hashes from the text.'
552
552
  prompt_helper: ''
@@ -562,7 +562,7 @@ ai_cryptocurrency_btc_transaction:
562
562
  notes: 'pattern_cryptocurrency_btc_transaction legacy extraction also exists if you cannot use AI'
563
563
  created: 2020-01-01
564
564
  modified: 2020-01-01
565
- created_by: DOGESEC
565
+ created_by: dogesec
566
566
  version: 1.0.0
567
567
  prompt_base: 'Extract all Bitcoin transaction hashes from the text.'
568
568
  prompt_helper: ''
@@ -580,7 +580,7 @@ ai_cve_id:
580
580
  notes: 'pattern_cve_id legacy extraction also exists if you cannot use AI'
581
581
  created: 2020-01-01
582
582
  modified: 2020-01-01
583
- created_by: DOGESEC
583
+ created_by: dogesec
584
584
  version: 1.0.0
585
585
  prompt_base: 'Extract all CVE IDs from the text.'
586
586
  prompt_helper: ''
@@ -598,7 +598,7 @@ ai_cpe_uri:
598
598
  notes: 'pattern_cpe_uri legacy extraction also exists if you cannot use AI'
599
599
  created: 2020-01-01
600
600
  modified: 2020-01-01
601
- created_by: DOGESEC
601
+ created_by: dogesec
602
602
  version: 1.0.0
603
603
  prompt_base: 'Extract all CPEs match strings from the text.'
604
604
  prompt_helper: ''
@@ -616,7 +616,7 @@ ai_bank_card_all:
616
616
  notes: ''
617
617
  created: 2020-01-01
618
618
  modified: 2020-01-01
619
- created_by: DOGESEC
619
+ created_by: dogesec
620
620
  version: 1.0.0
621
621
  prompt_base: 'Extract all MasterCard, Visa, American Express, Union Pay, Diners, JCB, and Discover bank card numbers from the text.'
622
622
  prompt_helper: ''
@@ -632,7 +632,7 @@ ai_bank_card_mastercard:
632
632
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_mastercard (AI can be unpredictable with sensitive data)'
633
633
  created: 2020-01-01
634
634
  modified: 2020-01-01
635
- created_by: DOGESEC
635
+ created_by: dogesec
636
636
  version: 1.0.0
637
637
  prompt_base: 'Extract all MasterCard card numbers from the text.'
638
638
  prompt_helper: ''
@@ -648,7 +648,7 @@ ai_bank_card_visa:
648
648
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_visa (AI can be unpredictable with sensitive data)'
649
649
  created: 2020-01-01
650
650
  modified: 2020-01-01
651
- created_by: DOGESEC
651
+ created_by: dogesec
652
652
  version: 1.0.0
653
653
  prompt_base: 'Extract all Visa card numbers from the text.'
654
654
  prompt_helper: ''
@@ -664,7 +664,7 @@ ai_bank_card_amex:
664
664
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_amex (AI can be unpredictable with sensitive data)'
665
665
  created: 2020-01-01
666
666
  modified: 2020-01-01
667
- created_by: DOGESEC
667
+ created_by: dogesec
668
668
  version: 1.0.0
669
669
  prompt_base: 'Extract all American Express card numbers from the text.'
670
670
  prompt_helper: ''
@@ -680,7 +680,7 @@ ai_bank_card_union_pay:
680
680
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_union_pay (AI can be unpredictable with sensitive data)'
681
681
  created: 2020-01-01
682
682
  modified: 2020-01-01
683
- created_by: DOGESEC
683
+ created_by: dogesec
684
684
  version: 1.0.0
685
685
  prompt_base: 'Extract all Union Pay card numbers from the text.'
686
686
  prompt_helper: ''
@@ -696,7 +696,7 @@ ai_bank_card_diners:
696
696
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_diners (AI can be unpredictable with sensitive data)'
697
697
  created: 2020-01-01
698
698
  modified: 2020-01-01
699
- created_by: DOGESEC
699
+ created_by: dogesec
700
700
  version: 1.0.0
701
701
  prompt_base: 'Extract all Diners card numbers from the text.'
702
702
  prompt_helper: ''
@@ -712,7 +712,7 @@ ai_bank_card_jcb:
712
712
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_jcb (AI can be unpredictable with sensitive data)'
713
713
  created: 2020-01-01
714
714
  modified: 2020-01-01
715
- created_by: DOGESEC
715
+ created_by: dogesec
716
716
  version: 1.0.0
717
717
  prompt_base: 'Extract all JCB card numbers from the text.'
718
718
  prompt_helper: ''
@@ -728,7 +728,7 @@ ai_bank_card_discover:
728
728
  notes: 'RECOMMENDED FOR BETTER ACCURACY: Use pattern_bank_card_discover (AI can be unpredictable with sensitive data)'
729
729
  created: 2020-01-01
730
730
  modified: 2020-01-01
731
- created_by: DOGESEC
731
+ created_by: dogesec
732
732
  version: 1.0.0
733
733
  prompt_base: 'Extract all Discover card numbers from the text.'
734
734
  prompt_helper: ''
@@ -746,7 +746,7 @@ ai_iban_number:
746
746
  notes: 'pattern_iban_number legacy extraction also exists if you cannot use AI'
747
747
  created: 2020-01-01
748
748
  modified: 2020-01-01
749
- created_by: DOGESEC
749
+ created_by: dogesec
750
750
  version: 1.0.0
751
751
  prompt_base: 'Extract all International Bank Account Numbers (IBAN) from the text.'
752
752
  prompt_helper: 'If needed, you can read more about IBAN numbers with examples here: https://www.iban.com/structure'
@@ -764,7 +764,7 @@ ai_phone_number:
764
764
  notes: 'pattern_phone_number legacy extraction also exists if you cannot use AI'
765
765
  created: 2020-01-01
766
766
  modified: 2020-01-01
767
- created_by: DOGESEC
767
+ created_by: dogesec
768
768
  version: 1.0.0
769
769
  prompt_base: 'Extract all phone numbers from the text.'
770
770
  prompt_helper: 'If needed, you can read more about the E.164 standard with examples here: https://en.wikipedia.org/wiki/E.164'
@@ -782,7 +782,7 @@ ai_country:
782
782
  notes: 'lookup_country_alpha2 legacy extraction also exists if you cannot use AI'
783
783
  created: 2020-01-01
784
784
  modified: 2020-01-01
785
- created_by: DOGESEC
785
+ created_by: dogesec
786
786
  version: 1.0.0
787
787
  prompt_base: 'Extract all countries described in the text, including countries printed as IS0-3166 Alpha2 and Alpha3 codes.'
788
788
  prompt_helper: 'If you are unsure, you can read more about the standard here: https://www.iso.org/iso-3166-country-codes.html'
@@ -800,7 +800,7 @@ ai_mitre_attack_enterprise:
800
800
  notes: 'lookup_mitre_attack_enterprise_id and lookup_mitre_attack_enterprise_name legacy extractions also exists if you cannot use AI'
801
801
  created: 2020-01-01
802
802
  modified: 2020-01-01
803
- created_by: DOGESEC
803
+ created_by: dogesec
804
804
  version: 1.0.0
805
805
  prompt_base: 'Extract all references to MITRE ATT&CK Enterprise tactics, techniques, groups, data sources, mitigations, software, and campaigns described in the text. These references may not be explicit in the text so you should be careful to account for the natural language of the text your analysis. Do not include MITRE ATT&CK ICS or MITRE ATT&CK Mobile in the results.'
806
806
  prompt_helper: 'If you are unsure, you can learn more about MITRE ATT&CK Enterprise here: https://attack.mitre.org/matrices/enterprise/'
@@ -816,7 +816,7 @@ ai_mitre_attack_mobile:
816
816
  notes: 'lookup_mitre_attack_mobile_id and lookup_mitre_attack_mobile_name legacy extractions also exists if you cannot use AI'
817
817
  created: 2020-01-01
818
818
  modified: 2020-01-01
819
- created_by: DOGESEC
819
+ created_by: dogesec
820
820
  version: 1.0.0
821
821
  prompt_base: 'Extract all references to MITRE ATT&CK Mobile tactics, techniques, groups, data sources, mitigations, software, and campaigns described in the text. These references may not be explicit in the text so you should be careful to account for the natural language of the text your analysis. Do not include MITRE ATT&CK ICS or MITRE ATT&CK Enterprise in the results.'
822
822
  prompt_helper: 'If you are unsure, you can learn more about MITRE ATT&CK Enterprise here: https://attack.mitre.org/matrices/mobile/'
@@ -832,7 +832,7 @@ ai_mitre_attack_ics:
832
832
  notes: 'lookup_mitre_attack_ics_id and lookup_mitre_attack_ics_name legacy extractions also exists if you cannot use AI'
833
833
  created: 2020-01-01
834
834
  modified: 2020-01-01
835
- created_by: DOGESEC
835
+ created_by: dogesec
836
836
  version: 1.0.0
837
837
  prompt_base: 'Extract all references to MITRE ATT&CK ICS tactics, techniques, groups, data sources, mitigations, software, and campaigns described in the text. These references may not be explicit in the text so you should be careful to account for the natural language of the text your analysis. Do not include MITRE ATT&CK Mobile or MITRE ATT&CK Enterprise in the results.'
838
838
  prompt_helper: 'If you are unsure, you can learn more about MITRE ATT&CK Enterprise here: https://attack.mitre.org/matrices/ics/'
@@ -850,7 +850,7 @@ ai_mitre_capec:
850
850
  notes: 'lookup_mitre_capec_id and lookup_mitre_capec_name legacy extractions also exists if you cannot use AI'
851
851
  created: 2020-01-01
852
852
  modified: 2020-01-01
853
- created_by: DOGESEC
853
+ created_by: dogesec
854
854
  version: 1.0.0
855
855
  prompt_base: 'Extract all references to a MITRE CAPEC object from the text.'
856
856
  prompt_helper: 'If you are unsure, you can learn more about MITRE CAPEC here: https://capec.mitre.org/'
@@ -868,7 +868,7 @@ ai_mitre_cwe:
868
868
  notes: 'lookup_mitre_cwe_id and lookup_mitre_cwe_name legacy extractions also exists if you cannot use AI'
869
869
  created: 2020-01-01
870
870
  modified: 2020-01-01
871
- created_by: DOGESEC
871
+ created_by: dogesec
872
872
  version: 1.0.0
873
873
  prompt_base: 'Extract all references to a MITRE CWE object from the text.'
874
874
  prompt_helper: 'If you are unsure, you can learn more about MITRE CAPEC here: https://cwe.mitre.org/'
@@ -886,7 +886,7 @@ ai_attack_pattern:
886
886
  notes: 'lookup_attack_pattern legacy extraction also exists if you cannot use AI'
887
887
  created: 2020-01-01
888
888
  modified: 2020-01-01
889
- created_by: DOGESEC
889
+ created_by: dogesec
890
890
  version: 1.0.0
891
891
  prompt_base: 'Extract all Attack Patterns from the text.'
892
892
  prompt_helper: 'Attack Patterns are a type of TTP that describe ways that adversaries attempt to compromise targets. Attack Patterns are used to help categorize attacks, generalize specific attacks to the patterns that they follow, and provide detailed information about how attacks are performed. An example of an attack pattern is "spear phishing": a common type of attack where an attacker sends a carefully crafted e-mail message to a party with the intent of getting them to click a link or open an attachment to deliver malware.'
@@ -902,7 +902,7 @@ ai_campaign:
902
902
  notes: 'lookup_campaign legacy extraction also exists if you cannot use AI'
903
903
  created: 2020-01-01
904
904
  modified: 2020-01-01
905
- created_by: DOGESEC
905
+ created_by: dogesec
906
906
  version: 1.0.0
907
907
  prompt_base: 'Extract all Campaigns from the text.'
908
908
  prompt_helper: 'A Campaign is a grouping of adversarial behaviors that describes a set of malicious activities or attacks (sometimes called waves) that occur over a period of time against a specific set of targets. Campaigns usually have well defined objectives and may be part of an Intrusion Set. Campaigns are often attributed to an intrusion set and threat actors.'
@@ -918,7 +918,7 @@ ai_course_of_action:
918
918
  notes: 'lookup_course_of_action legacy extraction also exists if you cannot use AI'
919
919
  created: 2020-01-01
920
920
  modified: 2020-01-01
921
- created_by: DOGESEC
921
+ created_by: dogesec
922
922
  version: 1.0.0
923
923
  prompt_base: 'Extract all Course of Actions from the text.'
924
924
  prompt_helper: 'A Course of Action (CoA) is a recommendation from a producer of intelligence to a consumer on the actions that they might take in response to that intelligence. The CoA may be preventative to deter exploitation or corrective to counter its potential impact. The CoA may describe automatable actions (applying patches, configuring firewalls, etc.), manual processes, or a combination of the two. For example, a CoA that describes how to remediate a vulnerability could describe how to apply the patch that removes that vulnerability.'
@@ -934,7 +934,7 @@ ai_identity:
934
934
  notes: 'lookup_identity legacy extraction also exists if you cannot use AI'
935
935
  created: 2020-01-01
936
936
  modified: 2020-01-01
937
- created_by: DOGESEC
937
+ created_by: dogesec
938
938
  version: 1.0.0
939
939
  prompt_base: 'Extract all Identities from the text.'
940
940
  prompt_helper: 'Identities can represent actual individuals, organizations, or groups (e.g., ACME, Inc.) as well as classes of individuals, organizations, systems or groups (e.g., the finance sector).'
@@ -950,7 +950,7 @@ ai_infrastructure:
950
950
  notes: 'lookup_infrastructure legacy extraction also exists if you cannot use AI'
951
951
  created: 2020-01-01
952
952
  modified: 2020-01-01
953
- created_by: DOGESEC
953
+ created_by: dogesec
954
954
  version: 1.0.0
955
955
  prompt_base: 'Extract all Infrastructure from the text.'
956
956
  prompt_helper: 'The Infrastructure SDO represents a type of TTP and describes any systems, software services and any associated physical or virtual resources intended to support some purpose (e.g., C2 servers used as part of an attack, device or server that are part of defence, database servers targeted by an attack, etc.).'
@@ -966,7 +966,7 @@ ai_intrusion_set:
966
966
  notes: 'lookup_intrusion_set legacy extraction also exists if you cannot use AI'
967
967
  created: 2020-01-01
968
968
  modified: 2020-01-01
969
- created_by: DOGESEC
969
+ created_by: dogesec
970
970
  version: 1.0.0
971
971
  prompt_base: 'Extract all Intrusion Sets from the text.'
972
972
  prompt_helper: 'An Intrusion Set is a grouped set of adversarial behaviors and resources with common properties that is believed to be orchestrated by a single organization. An Intrusion Set may capture multiple Campaigns or other activities that are all tied together by shared attributes indicating a common known or unknown Threat Actor.'
@@ -982,7 +982,7 @@ ai_malware:
982
982
  notes: 'lookup_malware legacy extraction also exists if you cannot use AI'
983
983
  created: 2020-01-01
984
984
  modified: 2020-01-01
985
- created_by: DOGESEC
985
+ created_by: dogesec
986
986
  version: 1.0.0
987
987
  prompt_base: 'Extract all Malware names from the text.'
988
988
  prompt_helper: 'Malware is a type of TTP that represents malicious code. It generally refers to a program that is inserted into a system, usually covertly. The intent is to compromise the confidentiality, integrity, or availability of the victims data, applications, or operating system (OS) or otherwise annoy or disrupt the victim.'
@@ -998,7 +998,7 @@ ai_threat_actor:
998
998
  notes: 'lookup_threat_actor legacy extraction also exists if you cannot use AI'
999
999
  created: 2020-01-01
1000
1000
  modified: 2020-01-01
1001
- created_by: DOGESEC
1001
+ created_by: dogesec
1002
1002
  version: 1.0.0
1003
1003
  prompt_base: 'Extract all Threat Actor names from the text.'
1004
1004
  prompt_helper: 'Threat Actors are actual individuals, groups, or organizations believed to be operating with malicious intent. A Threat Actor is not an Intrusion Set but may support or be affiliated with various Intrusion Sets, groups, or organizations over time. Threat Actors can be characterized by their motives, capabilities, goals, sophistication level, past activities, resources they have access to, and their role in the organization.'
@@ -1014,7 +1014,7 @@ ai_tool:
1014
1014
  notes: 'lookup_tool legacy extraction also exists if you cannot use AI'
1015
1015
  created: 2020-01-01
1016
1016
  modified: 2020-01-01
1017
- created_by: DOGESEC
1017
+ created_by: dogesec
1018
1018
  version: 1.0.0
1019
1019
  prompt_base: 'Extract all Software names from the text.'
1020
1020
  prompt_helper: 'Legitimate software that can be used by threat actors to perform attacks. Unlike malware, these software packages are often found on a system and have legitimate purposes for power users, system administrators, network administrators, or even normal users. Remote access tools (e.g., RDP) and network scanning tools (e.g., Nmap) are examples of software that may be used by a Threat Actor during an attack.'