Skip to content

Commit 427fece

Browse files
committed
Add random mail address function
1 parent c48c34a commit 427fece

File tree

1 file changed

+94
-0
lines changed

1 file changed

+94
-0
lines changed

lib/rex/text.rb

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,62 @@ module Text
102102
nil, nil, nil, nil, nil, nil, nil, nil, nil
103103
]
104104

105+
#
106+
# Most 100 common surnames, male/female names in the U.S. (http://names.mongabay.com/)
107+
#
108+
109+
Surnames = [
110+
"adams", "alexander", "allen", "anderson", "bailey", "baker", "barnes",
111+
"bell", "bennett", "brooks", "brown", "bryant", "butler", "campbell",
112+
"carter", "clark", "coleman", "collins", "cook", "cooper", "cox",
113+
"davis", "diaz", "edwards", "evans", "flores", "foster", "garcia",
114+
"gonzales", "gonzalez", "gray", "green", "griffin", "hall", "harris",
115+
"hayes", "henderson", "hernandez", "hill", "howard", "hughes", "jackson",
116+
"james", "jenkins", "johnson", "jones", "kelly", "king", "lee", "lewis",
117+
"long", "lopez", "martin", "martinez", "miller", "mitchell", "moore",
118+
"morgan", "morris", "murphy", "nelson", "parker", "patterson", "perez",
119+
"perry", "peterson", "phillips", "powell", "price", "ramirez", "reed",
120+
"richardson", "rivera", "roberts", "robinson", "rodriguez", "rogers",
121+
"ross", "russell", "sanchez", "sanders", "scott", "simmons", "smith",
122+
"stewart", "taylor", "thomas", "thompson", "torres", "turner", "walker",
123+
"ward", "washington", "watson", "white", "williams", "wilson", "wood",
124+
"wright", "young"
125+
]
126+
127+
Names_Male = [
128+
"aaron", "adam", "alan", "albert", "andrew", "anthony", "antonio",
129+
"arthur", "benjamin", "billy", "bobby", "brandon", "brian", "bruce",
130+
"carl", "carlos", "charles", "chris", "christopher", "clarence", "craig",
131+
"daniel", "david", "dennis", "donald", "douglas", "earl", "edward",
132+
"eric", "ernest", "eugene", "frank", "fred", "gary", "george", "gerald",
133+
"gregory", "harold", "harry", "henry", "howard", "jack", "james", "jason",
134+
"jeffrey", "jeremy", "jerry", "jesse", "jimmy", "joe", "john", "johnny",
135+
"jonathan", "jose", "joseph", "joshua", "juan", "justin", "keith",
136+
"kenneth", "kevin", "larry", "lawrence", "louis", "mark", "martin",
137+
"matthew", "michael", "nicholas", "patrick", "paul", "peter", "philip",
138+
"phillip", "ralph", "randy", "raymond", "richard", "robert", "roger",
139+
"ronald", "roy", "russell", "ryan", "samuel", "scott", "sean", "shawn",
140+
"stephen", "steve", "steven", "terry", "thomas", "timothy", "todd",
141+
"victor", "walter", "wayne", "william", "willie"
142+
]
143+
144+
Names_Female = [
145+
"alice", "amanda", "amy", "andrea", "angela", "ann", "anna", "anne",
146+
"annie", "ashley", "barbara", "betty", "beverly", "bonnie", "brenda",
147+
"carol", "carolyn", "catherine", "cheryl", "christina", "christine",
148+
"cynthia", "deborah", "debra", "denise", "diana", "diane", "donna",
149+
"doris", "dorothy", "elizabeth", "emily", "evelyn", "frances", "gloria",
150+
"heather", "helen", "irene", "jacqueline", "jane", "janet", "janice",
151+
"jean", "jennifer", "jessica", "joan", "joyce", "judith", "judy", "julia",
152+
"julie", "karen", "katherine", "kathleen", "kathryn", "kathy", "kelly",
153+
"kimberly", "laura", "lillian", "linda", "lisa", "lois", "lori", "louise",
154+
"margaret", "maria", "marie", "marilyn", "martha", "mary", "melissa",
155+
"michelle", "mildred", "nancy", "nicole", "norma", "pamela", "patricia",
156+
"paula", "phyllis", "rachel", "rebecca", "robin", "rose", "ruby", "ruth",
157+
"sandra", "sara", "sarah", "sharon", "shirley", "stephanie", "susan",
158+
"tammy", "teresa", "theresa", "tina", "virginia", "wanda"
159+
]
160+
105161
##
106162
#
107163
# Serialization
@@ -1535,6 +1591,44 @@ def self.rand_state()
15351591
States[rand(States.size)]
15361592
end
15371593

1594+
# Generate a surname
1595+
def self.rand_surname
1596+
Surnames[rand(Surnames.size)]
1597+
end
1598+
1599+
# Generate a name
1600+
def self.rand_name
1601+
if rand(10) % 2 == 0
1602+
Names_Male[rand(Names_Male.size)]
1603+
else
1604+
Names_Female[rand(Names_Female.size)]
1605+
end
1606+
end
1607+
1608+
# Generate a male name
1609+
def self.rand_name_male
1610+
Names_Male[rand(Names_Male.size)]
1611+
end
1612+
1613+
# Generate a female name
1614+
def self.rand_name_female
1615+
Names_Female[rand(Names_Female.size)]
1616+
end
1617+
1618+
# Generate a random mail address
1619+
def self.rand_mail_address
1620+
d = ['com', 'net', 'org', 'gov', 'biz', 'edu']
1621+
1622+
mail_address = ''
1623+
mail_address << Rex::Text.rand_name
1624+
mail_address << '.'
1625+
mail_address << Rex::Text.rand_surname
1626+
mail_address << '@'
1627+
mail_address << Rex::Text.rand_text_alpha(rand(5) + 4).downcase
1628+
mail_address << '.'
1629+
mail_address << d[rand(d.size)]
1630+
end
1631+
15381632

15391633
#
15401634
# Calculate the ROR13 hash of a given string

0 commit comments

Comments
 (0)