[metadata] creation_date = "2023/03/20" integration = ["endpoint"] maturity = "production" min_stack_comments = "New fields added: required_fields, related_integrations, setup" min_stack_version = "8.3.0" updated_date = "2023/08/02" [rule] author = ["Elastic"] description = """ This rule identifies a sequence of 100 file extension rename events within a set of common file paths by the same process in a timespan of 1 second. Ransomware is a type of malware that encrypts a victim's files or systems and demands payment (usually in cryptocurrency) in exchange for the decryption key. One important indicator of a ransomware attack is the mass encryption of the file system, after which a new file extension is added to the file. """ from = "now-9m" index = ["logs-endpoint.events.*"] language = "eql" license = "Elastic License v2" name = "Suspicious File Changes Activity Detected" risk_score = 47 rule_id = "28738f9f-7427-4d23-bc69-756708b5f624" severity = "medium" tags = ["Domain: Endpoint", "OS: Linux", "Use Case: Threat Detection", "Tactic: Impact"] type = "eql" query = ''' sequence by host.id, process.entity_id with maxspan=1s [ file where host.os.type == "linux" and event.type == "change" and event.action == "rename" and file.extension != "" and file.path : ( "/home/*", "/etc/*", "/root/*", "/opt/*", "/var/backups/*", "/var/lib/log/*" ) and not file.extension : ( "xml", "json", "conf", "dat", "gz", "info", "mod", "final", "php", "pyc", "log", "bak", "bin", "csv", "pdf", "cfg", "*old" ) and not process.name : ( "dpkg", "yum", "dnf", "rpm", "dockerd", "go", "java", "pip*", "python*", "node", "containerd", "php", "p4d", "conda", "chrome", "imap", "cmake", "firefox", "semanage", "semodule", "ansible-galaxy" ) ] with runs=100 | tail 1 ''' [[rule.threat]] framework = "MITRE ATT&CK" [[rule.threat.technique]] id = "T1486" name = "Data Encrypted for Impact" reference = "https://attack.mitre.org/techniques/T1486/" [rule.threat.tactic] id = "TA0040" name = "Impact" reference = "https://attack.mitre.org/tactics/TA0040/"