2017-2018-2 20179317 《网络攻防技术》第三周作业
一、python3简明教程学习总结
使用关键字def来定义一个函数
通过global来定义全局变量
可以在定于函数的时候对变量进行一个默认值的设置,但有默认值的参数后面不可以再跟普通参数,默认值只会被赋值一次
高阶函数、仿函数内部至少使用一个或多个函数作为参数、或者返回另一个函数作为输出
map函数:它接受一个函数和一个序列(迭代器)作为输入,然后对序列(迭代器)的每一个值应用这个函数,返回一个序列(迭代器)其中包含应用这个函数后的结果。
使用open()函数打开文件,这个函数有两个参数,一个是文件的名称或打开路径,另一个是打开方式:“r”为只读,“w”为写入,“a”为追加。
read(size)有一个可选参数size用于指定字符串长度。如果没有指定 size 或者指定为负数,就会读取并返回整个文件。当文件大小为当前机器内存两倍时,就会产生问题。反之,会尽可能按比较大的 size 读取和返回数据。readline()能帮助你每次读取文件的一行。
使用 readlines() 方法读取所有行到一个列表中。
函数enumerate(iterableobject),在序列中循环时,索引位置和对应值可以使用它同时得到。
使用 with 语句处理文件对象,它会在文件用完后会自动关闭,就算发生异常也没关系
在 Python3 中使用 Python2 独有的语法就会发生 SyntaxError:
不小心在行首多打了一个空格就会产生 IndentationError
当有人试图访问一个未定义的变量则会发生 NameError
TypeError 也是一种经常出现的异常。当操作或函数应用于不适当类型的对象时引发,一个常见的例子是对整数和字符串做加法。
try……except……来处理异常信息
首先,执行 try 子句 (在 try 和 except 关键字之间的部分)。
如果没有异常发生,except 子句 在 try 语句执行完毕后就被忽略了。
如果在 try 子句执行过程中发生了异常,那么该子句其余的部分就会被忽略。
如果异常匹配于 except 关键字后面指定的异常类型,就执行对应的 except 子句。然后继续执行 try 语句之后的代码。
如果发生了一个异常,在 except 子句中没有与之匹配的分支,它就会传递到上一级 try 语句中。
如果最终仍找不到对应的处理语句,它就成为一个 未处理异常,终止程序运行,显示提示信息。
除此之外,还可以使用raise来抛出一个异常。
二、视频学习内容总结
第六节 信息收集之主机探测
主机探测指识别目标机器是否可用。
- netenum对C段扫描,获得测试IP地址
-
fping扫描
fping -g 123.58.180.0/24
-
nbtscan命令扫描内网
ntbscan -r 地址
-
ARPing探测MAC地址
arping 地址
- Netdiscover探测内网信息
- 使用dmitry获取目标详细信息,包括whois、tcp port等
- 对测试目标进行WAF探测
-
对目标是否存在负载均衡检测,使用LBD(load balancing detector)基于DNS解析,HTTP头
第七节:Kali信息收集之主机扫描
- 主机扫描,Nmap完成以下任务
主机探测(探测网络上的主机)
端口扫描:探测目标主机开放的端口
版本检测:探测目标主机的网络服务
系统检测:探测操作系统和网络设备的硬件特性
支持探测脚本的编写:使用Nmap的脚本引擎和Lus编程语言
-Nmap扫描步骤
1.打开测试主机,获取测试目标IP地址
2.普通简单扫描
3.简单扫描,添加详细输出(命令+-vv)格式 nmap -vv
第八节:Kali信息收集之指纹识别
- Banner抓取介绍(应用程序指纹识别)
- 常规主动指纹识别工具
-
被动指纹识别工具p0f
- WEB指纹识别工具
-
针对具体的WEB CNS,使用webscan等工具进行CNS的指纹枚举
第九节:Kali信息收集之协议分析
- SMB分析
- SMTP分析
- SNMP分析
- SSL分析
- Volp分析
- VPN分析
第十节:Kali漏洞分析之OpenVAS安装(官网 www.openvas.org)(en.wikipedia.org/wiki/OpenVas)
OpenVAS包括一个中央服务器和一个图形化的前段。这个服务器准许用户允许几种不同的网络漏洞测试,而且OpenVAS可以经常对其更新。openVAS所以的代码都符合GPL规范。