Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

能不能直接监控网页关键词 #14

Closed
Dawson0x00 opened this issue Mar 12, 2020 · 71 comments
Closed

能不能直接监控网页关键词 #14

Dawson0x00 opened this issue Mar 12, 2020 · 71 comments

Comments

@Dawson0x00
Copy link

现在增加元素选择器 这个比较复杂,而且还是必须要添加的选项
如何才能只需要配置 -contain 参数 只监控关键词的增加的呢?

@Dawson0x00 Dawson0x00 added the bug Something isn't working label Mar 12, 2020
@LogicJake LogicJake removed the bug Something isn't working label Mar 12, 2020
@LogicJake
Copy link
Owner

没有元素选择器也没办法知道你要监控哪个关键词, 一个网页那么多信息, 怎么定位需要监控哪个变化

@Dawson0x00
Copy link
Author

关键词我自己设置 我现在的需求是比如:
只监控:”CVE-2020-8840“ 当网页出现这几个词的话就邮箱通知

@Dawson0x00
Copy link
Author

不知道可行不 就是查找网页所有内容,只要网页更新出现比如 “cve2020” 就邮件通知

@LogicJake
Copy link
Owner

@Dawson0x00 大概懂你的意思了,可以发出来网站,回头试试有没有办法

@Dawson0x00
Copy link
Author

@LogicJake
Copy link
Owner

@Dawson0x00 感觉可以用一个选择器获取整个页面的文本,然后contain 就行

@Dawson0x00
Copy link
Author

这个网站 我们公司的域名 现在客户是想要在漏洞对应的安全设备设备补丁包出来后的第一时间就要告知客户,所以希望这个

@Dawson0x00
Copy link
Author

如果选择xpath的话 我不知道元素选择器那一行该怎么写?呜呜 我是太菜了

@Dawson0x00
Copy link
Author

我现在在“监控规则”写: -contain CVE-2020-8840
但是在元素选择器那一栏不知道该怎么写

@Dawson0x00
Copy link
Author

不早了早点休息, 明天沟通吧 谢谢🙏~

@LogicJake
Copy link
Owner

@Dawson0x00 /html/body 可以试试

@nabule
Copy link
Contributor

nabule commented Mar 12, 2020

如果选择xpath的话 我不知道元素选择器那一行该怎么写?呜呜 我是太菜了

就像作者说的,“感觉可以用一个选择器获取整个页面的文本,然后contain 就行”。xpath你可以上网查一下怎么写,有插件的。另外建议可以用正则把无关内容过滤下。 如果关注内容太长,之前默认的数据库字段长度可能不够。

@Dawson0x00
Copy link
Author

我试试~

@LogicJake
Copy link
Owner

@nabule 有道理 我没考虑到长度的问题

@Dawson0x00
Copy link
Author

嗯 刚试了 /html/body 目前ok了 明天我也学习学习xpath

@nabule
Copy link
Contributor

nabule commented Mar 12, 2020

@nabule 有道理 我没考虑到长度的问题

说到这,我也没好意思提request,我也不知道最长能设置多长。。。(数据库不会啊)自己测试了大点的值。 建议所有的字段(包括网址)都搞的很长!
PS:如果监控很长网址的情况下,可能显示有异常,我粗暴的直接在列表中不显示网址了。。。

@LogicJake
Copy link
Owner

@nabule 代码设置的内容数据库字段是 string(128), 但貌似在数据库那里string长度不只128

@LogicJake
Copy link
Owner

LogicJake commented Mar 12, 2020

2020-03-12 22-46-11 的屏幕截图
比如我刚刚测试的,能把整个页面内容保存.

@Dawson0x00
Copy link
Author

还有一个问题咨询下:
“系统邮箱设置” 那里我已经设置了邮件服务器与授权码
但是 ”通知方式管理“ 那一栏是 邮件那一栏 邮件地址显示是”默认“ 这个是否需要更改的呢?更改成我在“系统邮箱设置”那一栏的邮件地址呢?

@LogicJake
Copy link
Owner

@Dawson0x00 通知方式的邮件可以是任意邮件地址

@Dawson0x00
Copy link
Author

好的~ 但是wechat的话 就得写微信sckey吧

@LogicJake
Copy link
Owner

server酱,挺好用的,可以搜索一下。

@Dawson0x00
Copy link
Author

嗯 已经弄好sckey了 现在在测试,看20分钟后微信与邮件能不收到

@Dawson0x00
Copy link
Author

试了好多次,一直无法收到提醒:
Exception('没有设置通知邮箱,无法发送邮件通知')
另外 微信端也收不到

@Dawson0x00
Copy link
Author

我监控地址:https://update.nsfocus.com/update/listWvssDetail/v/6/t/plg
监控规则:-contain CVE-2020-8840
元素选择器:/html/body
并且开启了“邮件提醒” 与“微信提醒”
qq邮箱发件服务器:�smtp.qq.com 端口:465 授权码也写了
微信 sckey也只是了

smtp.qq.com

smtp.qq.com

smtp.qq.com

@Dawson0x00
Copy link
Author

我监控地址:https://update.nsfocus.com/update/listWvssDetail/v/6/t/plg
监控规则:-contain CVE-2020-8840
元素选择器:/html/body
并且开启了“邮件提醒” 与“微信提醒”
qq邮箱发件服务器:smtp.qq.com 端口:465 授权码也写了
微信 sckey也设置了
但是还是收不到 有”CVE-2020-8840“ 这个关键词的提示

@LogicJake
Copy link
Owner

@Dawson0x00 多截几个图吧 你这样说也帮不了你

@LogicJake
Copy link
Owner

@Dawson0x00 敏感信息打码

@LogicJake
Copy link
Owner

这次又是:SMTPServerDisconnected('Connection unexpectedly closed')

这是网络的问题吗?

邮箱的问题最新的commit已经修复, 重复提醒我这边自己测试没遇到.

@Dawson0x00
Copy link
Author

很奇怪
微信提醒 重复的内容发了 三次 后面就不会发了三次之后系统会Exception('不要重复发送同样的内容')

@LogicJake
Copy link
Owner

@Dawson0x00 重建一下吧,可能哪里出错导致任务多次重启了\

@Dawson0x00
Copy link
Author

不对 系统提示 :Exception('不要重复发送同样的内容') 之后还会多次重复发送。如何更改代码来控制只发一次呢

@Dawson0x00
Copy link
Author

嗯 那我 更新下commit把

@LogicJake
Copy link
Owner

@Dawson0x00 在发送之前,系统会对比此次抓到的内容和上次的内容是否一致,一样的是不会在发送的. 这个本身就是这么设置的. 出现这种情况是因为,在发送给微信的时候,发送频率过快导致发送失败, 所以导致数据库没有存入新的内容,所以下次还是会发送,周而复始一直出错. 建议重新建任务, 且抓取频率不要太快.

@Dawson0x00
Copy link
Author

我删除了之前clone的代码,然后重新git clone 最新代码后还是登陆后还是显示之前的配置与任务

@Dawson0x00
Copy link
Author

是不重建的时候除了代码更新 数据库也要更新重新建一个库是吧

@LogicJake
Copy link
Owner

@Dawson0x00 那是因为数据库没删😂😂😂

@Dawson0x00
Copy link
Author

嗯 删了 现在可以了👌~

@Dawson0x00
Copy link
Author

邮件提醒 与微信提醒 两个之中只能默认开启其中一个吗?

@LogicJake
Copy link
Owner

@Dawson0x00 改了,现在都可以

@Dawson0x00
Copy link
Author

嗯好的 我现在频率设置成20分钟一次提醒 这样合理把

@LogicJake
Copy link
Owner

@Dawson0x00 可以

@Dawson0x00
Copy link
Author

其实要是能在“通知方式�管理”可以设置多个邮件联系人 就更好了~~

@LogicJake
Copy link
Owner

@Dawson0x00 后续考虑

@Dawson0x00
Copy link
Author

嗯 另外�还有一个建议:监控到关键词后可以自定义内容发邮件~
其实这个监控插件 对于我们做信息安全的有很多用处~~~ 回去我也计划多研究学习这个代码~�

@Dawson0x00
Copy link
Author

我重建了 还是提示:SMTPServerDisconnected('Connection unexpectedly closed')
我用的是qq邮箱发件服务器:smtp.qq.com 端口:465 授权码也写了

@LogicJake
Copy link
Owner

@Dawson0x00 用户名改成 qq 号试试

@Dawson0x00
Copy link
Author

现在用户名已经是qq号了 但是还是这个错误

@LogicJake
Copy link
Owner

@Dawson0x00 interesting 我也是qq邮箱

@Dawson0x00
Copy link
Author

呜呜 那是我配置的问题吗 按道理配置的没问题呀 我再找找

@Dawson0x00
Copy link
Author

你的邮件服务器 qq 的也是 465 吧?

@LogicJake
Copy link
Owner

@Dawson0x00 是的

@Dawson0x00
Copy link
Author

我的�python版本是 python 3.7 你的也是吗~

@LogicJake
Copy link
Owner

@Dawson0x00 3.6

@Dawson0x00
Copy link
Author

我知道怎么改了,在python 3.7的版本中修改了 ssl.py 导致了 smtplib.SMTP_SSL 的问题 ,得下下面这样写才行 我本地写了段代码测试是可以发送的
server = smtplib.SMTP_SSL(host=email_host)
server.connect(host=email_host, port=465)
server.login(send_user,password)
server.sendmail(user,user_list,message.as_string())
server.close()

我是参考的 https://blog.csdn.net/siweigesiweige/article/details/86167493

@Dawson0x00
Copy link
Author

现在微信提醒 还是多次重复提醒 ,我现在设置的是 20分钟 还是不知道怎么回事😂

@LogicJake
Copy link
Owner

@Dawson0x00 修复了一些问题 你可以尝试一下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants