从Kali Linux 2019.4开始,支持Undercover模式,类似Windows模式。当用户切换为Undercover模式后,默认桌面图标包括三个,分别是回收站、文件系统和主文件夹。如果用户希望添加或删除桌面图标,可以编辑默认的桌面图标。下面将介绍修改桌面图标的方式。例如,不在桌面显示回收站图标。如下所示:
(1)在图形界面,依次选择“应用程序”|“设置”|“桌面”命令,打开桌面设置界面。
(2)单击图标选项卡,在默认图标部分,去掉“回收站”复选框中的对勾即可。
修改Kali Linux背景图片
在Kali Linux中,默认XFCE桌面背景图片保存在/usr/ share/backgrounds/xfce目录。默认Undercover桌面背景图片保存在/usr/ share/ kali-undercover/backgrounds目录。如果用户不希望使用默认桌面,则可以将修改的背景图片保存到对应的目录。然后,依次选择“应用程序”|“设置”|“桌面”命令,打开桌面设置界面。在背景选项卡中,选择希望更改的壁纸即可。另外,用户还可以手动选择查看其它目录保存的背景图片,样式、颜色等。
Kali Linux 2019.4新特性
(1)默认桌面改为XFCE,替换为原有的Gnome。
(2)使用新的主题模式Undercover,更接近于Windows桌面。
(3)Kali-Docs迁移到GitLab网站。
(4)使用BTRFS,支持系统更新后回滚。
(5)重新引入软件包PowerShell。
(6)Kali NetHunter引入Kex Manager,支持HDMI外接显示器。
(7)支持8GB的SD卡。
Scapy快速构建DHCP服务器
交互模式下,直接使用函数dhcpd(),就可以构建一个服务器,如dhcpd(gw=’192.168.58.1′)。
代码模式下,直接使用类DHCP_am,就可以构建。示例代码如下:
dhcp_server= DHCP_am()
dhcp_server.gw=’192.168.1.101′
dhcp_server()
Scapy重置字段值
在Scapy中,开发人员可以对包的每个字段都进行赋值。但是,Scapy没有提供对字段重置功能。这个时候,可以利用Python语言提供的del语句。该语句可以删除对设定值的引用,恢复默认值,变相实现字段值重置功能。
Windows释放IP和重新获取IP
在Windows下,释放IP的命令为ipconfig /release。
重新获取IP的命令为ipconfig /renew。
只要DNS服务器不换,重新获取的IP会和上一个IP相同。因为重新请求的时候,就会把上次获取的IP发给DHCP服务器。服务器如果发现这个IP没有被人使用,就会优先分配这个IP。
Nmap端口状态判断依据
如果使用TCP SYN方式,返回SYN+ACK,表示Open;返回RST,表示Close;如果收到ICMP不可达,表示Filtered。
如果使用TCP ACK方式,返回RST,表示Unfiltered。
如果使用UDP、TCP Null、TCP Fin方式,没有响应,表示Open|Filtered。
如果使用IP ID idle方式,没响应,表示Closed|Filtered。
DHCP续约规则
主机向DHCP服务器申请一个IP,默认是8天的租约期。到期后,如果主机不续约,该IP就会分配给其他主机。为了保证长期使用,主机需要定期续约。续约规则如下:
(1)租约过一半后,主机发送DHCP Request包,要求续约。服务器同意,则回复DHCP ACK包,租期重新计算8天。
(2)如果没有得到响应,则在第七天后,主机发送DHCP Request包,要求续约。服务器同意,则回复DHCP ACK包,租期重新计算8天。
(3)如果在上述请求总,服务器没响应,主机就继续使用IP,直到租约期结束,重新发送DHCP Discover包,寻找DHCP服务器。
(4)如果在上述请求中,服务器不[……]
Scapy自带输出函数sprintf()
为了简化代码,Scapy为每个Packet对象内置了输出函数sprintf。
(1)基本输出功能:a.sprintf(“Hello a”)
(2)直接输出包中的字段:
a.sprintf(“%IP.proto%”) 输出包中IP层的协议字段值
a.sprintf(“%.time%”)输出当前包的创建时间
a.sprintf(“%IP:2.proto”)输出上层的IP层协议值
(3)支持判断输出:
a.sprintf(“a is P{TCP:TCP}{UDP:UDP}{ICMP:ICMP} packet”) 输出包的类型
Wireshark过滤ICMP包
ICMP包有两种,分为ICMP和ICMPv6。这是两种不同的协议,所以使用的显示过滤器也不同。ICMP协议的用icmp,而ICMPv6协议的用icmpv6。两者的不能混用。