日志这个东西,你认真写,上面真的会认真看吗?真的有用吗?既然如此,以形式主义针对形式主义!
可能就是懒癌晚期了吧@_@!

引子

偶然间看到C++的邮件自动发送,感觉还不错!

step1.日志自动生成功能

不同的公司需要的日志格式是不同的,针对自己的公司的日志格式,自动生成了日志。
日志生成效果如图:

生成一个工作目标的字典,使用随机数的方式选取目标。在对工作的内容进行随机抽取。字符串拼接,生成日志。附代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
def msg():
messeage1 = ' 一、本日主要工作\n'
i0 = random.randint(0, 20)
sy = open('system.txt', 'r')
sylines = sy.readlines()
messeage2 = sylines[i0]
messeage2 = str.strip(messeage2)
i1 = random.randint(4, 7)
vn = open('vulnerability.txt', 'r')
vnlines = vn.readlines()
vninfos = random.sample(vnlines, i1)
vn_num = str(i1) + '个漏洞'
infos = []
for vninfo in vninfos:
info = str.strip(vninfo)
infos.append(info)
vnquanxian = ['XXXXXXXXX漏洞(高危)', 'XXXXXXXXXX(高危)', 'XXXXXXXXXX漏洞(高危)', 'XXXXXXXXXX(高危)',
'XXXXXXXXX(高危)']
panduan = '否'
for x in vnquanxian:
for y in infos:
if x == y:
panduan = '是'
messeage3 = '\n' + str(i1) + '个漏洞' + '\n' + '是否获得获得权限:' + panduan + '\n'
messeage4 = '其中漏洞有:' + '\n'
for info in infos:
messeage4 = messeage4 + info + '\n'
messeage4 = messeage4
messeage5 = '二、存在问题\n' + '无\n' + '三、明日计划\n' + '其他系统的渗透测试'
messeage6 = '\n'
e = open('end.txt', 'r')
lines = e.readlines()
for line in lines:
messeage6 = messeage6 + str.strip(line) + '\n'
messeage = messeage1 + messeage2 + messeage3 + messeage4 + messeage5 + messeage6
return messeage
print msg()


step2.邮件发送

使用stmp自动发送邮件,,建议在给你领导发的时候同时给自己的小号邮箱也发一封,以确保邮件每天正常的发送。
附代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
mail_host="smtp.ym.163.com"
mail_user="你发送邮件的邮箱"
mail_pass="你的邮箱密码"
sender = '发送者'
receivers = ['你的领导','你的领导2号','你的小号邮箱']
def send_email():
now_time = datetime.datetime.now()
date_now = str(now_time)[0:10]
print date_now
info = MIMEMultipart()
info["from"] = sender
info["subject"] = date_now + '日志'
txt = MIMEText(msg(), "plain", "utf-8")
info.attach(txt)
try:
smtpObj = smtplib.SMTP()
smtpObj.connect(mail_host, "25")
state = smtpObj.login(mail_user, mail_pass)
if state[0] == 235:
smtpObj.sendmail(sender, receivers, info.as_string())
print u"邮件发送成功"
smtpObj.quit()
except smtplib.SMTPException, e:
print str(e)

在来一个时间判断,就可以定时发送,我这里判断的是小时数

1
2
3
4
5
6
7
8
import time
data_panduan = time.localtime()
print data_panduan
while(1):
if data_panduan[3]==17:
print 1
else:
print 0


总结

挂到vps上面,每天到点自动发送日志,岂不是美滋滋!

留言

2017-08-04

本文总阅读量
⬆︎TOP