python调用tcpdump监控流量 (E.N.D.)

欢迎来我的github仓库实时查看进度.今まのコミト: build up web and make sync.

Github repo link.

现已部署至服务器: 已重新搭建nw.laclic.ink 已解除部署

前端效果:

1.png

博客正文

记录下本次任务完成的过程与学习的历程,涉及的内容包括但不限于:

 ·对自己本次任务完成所需时间的初步预估:觉得这种事情要一个月叭

 ·学习的编程语言:吃老本(python).

 ·算法:平均值,暴力遍历.

 ·遇到的困难与解决方式:Bing,google,StackOverflow,cnblogs,csdn.

 ·总结以及实际用时:完全没那么容易,实际大概用了1周2天,前一周实现功能,后一周代码重构到类class中去:Github repo link.

 ·将代码 git 到仓库中,贴出 Github 链接,在仓库的 readme.md 中声明好运行环境与步骤等:Done.

 ·对自己的系统进行测试,贴出测试的结果或者动态图:见前端效果.

并替老板思考:

这些懒懒的技术人员制定的判定规则会出现的问题有哪些?

 ·难以确定阈值等参数,容易过低或过高

如果你是竞争对手,能否找到其他进攻方式绕开该规则,或者通过其他网络手段有效打击对手?(请勿模仿)

 ·到全球暴力搜索所有ip,寻找ssh登陆口令弱的肉鸡,将各地肉鸡以低流量进行攻击。
 ·通过前端漏洞,获取服务器shell,到存储重要信息的地方进行```rm -rf *``操作。
 ·盗取其他网站的登陆信息,进行撞库。

评估自己的系统的处理效率

 ·挺低的…毕竟是暴力遍历

老板某日在想桃子:我xxx有一个梦想,建成世界一流 news app!能够为世界上每个网民提供吃瓜服务。请从多个方向考虑该系统需要改进的地方还有哪些?(数据量,效率,安全性等等)

 ·使用更优秀的搜索算法
 ·使用更优秀的推荐算法
 ·做好服务器user的分级,防止root用户被黑客获取

疑难杂症

Django调用外部js

Here.

python调用tcpdump抓包过滤

代码借鉴来自:Here.

subprocess

执行命令调用进程,获取回显

Here.

读取命令行回显并输出

def tcpdump():
    import subprocess
    p = subprocess.Popen('ls',stdout=subprocess.PIPE,encoding='utf-8')
    print(p.stdout.read())

tcpdump()

Python 从subprocess运行的子进程中实时获取输出

subprocess会把输出都放到缓冲区,待程序运行完成才输出

Here.

tcpdump

获取包信息

-c抓10个包,-q简易模式,-n不把主机地址转换为名字tcpdump -c 10 -q -n

14:44:50.817261 IP 172.19.128.1.59761 > 172.19.134.153.37903: tcp 13 # 发送者ip,接收者ip,协议名,包长度
14:44:50.817330 IP 172.19.134.153.37903 > 172.19.128.1.59761: tcp 0
14:44:51.450900 IP 172.19.128.1.59762 > 172.19.134.153.37903: tcp 13
14:44:51.450947 IP 172.19.134.153.37903 > 172.19.128.1.59762: tcp 0
14:44:53.385483 IP 172.19.134.153.37903 > 172.19.128.1.59761: tcp 13
14:44:53.434174 IP 172.19.128.1.59761 > 172.19.134.153.37903: tcp 0
14:44:54.426674 IP 172.19.134.153.37903 > 172.19.128.1.59762: tcp 13
14:44:54.469224 IP 172.19.128.1.59762 > 172.19.134.153.37903: tcp 0
14:44:55.829376 IP 172.19.128.1.59761 > 172.19.134.153.37903: tcp 13
14:44:55.829431 IP 172.19.134.153.37903 > 172.19.128.1.59761: tcp 0
14:44:56.464047 IP 172.19.128.1.59762 > 172.19.134.153.37903: tcp 13
14:44:56.464089 IP 172.19.134.153.37903 > 172.19.128.1.59762: tcp 0

Here.

fcntl

用于锁定文件,防止同时改写

Here.

select

用于读取缓冲区

Here.

网页数据如何实现实时刷新?

Here.

python程序后台运行的实现

Here.

python函数超时装饰器

Here.

posted @ 2021-01-29 13:07  LacLic  阅读(1184)  评论(0编辑  收藏  举报