Sha256: c16d79ae73ae2921a7b15741bd16cef008b2eae0af0595cd2c1fa57a5da8f6da
Contents?: true
Size: 798 Bytes
Versions: 27
Compression:
Stored size: 798 Bytes
Contents
# frozen_string_literal: true require "crtsh" module Mihari module Analyzers class Crtsh < Base param :query option :exclude_expired, default: proc { true } def artifacts results = search results.map do |result| values = result["name_value"].to_s.lines.map(&:chomp) values.map do |value| Artifact.new(data: value, source: source, metadata: result) end end.flatten end private def api @api ||= ::Crtsh::API.new end # # Search # # @return [Array<Hash>] # def search exclude = exclude_expired ? "expired" : nil api.search(query, exclude: exclude) rescue ::Crtsh::Error => _e [] end end end end
Version data entries
27 entries across 27 versions & 1 rubygems