6. The storage medium of claim 1 , further comprising instructions executable by the processor to: obtain a third set of domain names, wherein each domain name in the third set is a domain name that was previously identified as being generated by a particular domain name generation algorithm; and train, using the third set, a second predictive model to determine whether a particular domain name was generated by the particular domain name generation algorithm, wherein the determination is based on at least one of the plurality of syntactic features of the particular domain name.
1. A non-transitory machine-readable storage medium encoded with instructions executable by a processor to: receive a first set of domain names, each domain name in the first set being a domain name that was previously identified as valid; receive a second set of domain names, each domain name in the second set being a domain name that was previously identified as algorithmically generated; and train, using the first set and the second set, a predictive model to identify a given domain name as one of a valid domain name or an algorithmically generated domain name based on a plurality of syntactic features of the given domain name, wherein the plurality of syntactic features include a count of impossible character n-grams included in at least a portion of the given domain name, where n is a positive integer greater than one.