2017-2018-2 20179225 《网络攻防与实践》 第8周作业

一、教材内容学习

1 Linux操作系统发展与现状

1)** Linux的优势**

  开放源代码与免费
  跨平台的硬件支持
  丰富的软件支持
  多用户多任务
  可靠的安全性
  良好的稳定性
  完善的网络功能

2)** Linux系统结构**

Linux系统结构包括Linux内核,一些GNU运行库和工具,命令行Shell,图形界面X窗口系统及相应桌面环境。在硬件抽象层之上是内核服务功能模块,包括进程管理、内存管理、文件系统、设备控制与网络这五个子系统;而这些内核模块通过系统调用接口向用户态的GNU运行库及工具、命令行Shell、X窗口以及应用软件提供服务。

2 Linux操作系统安全机制

1) Linux身份认证机制

  • Linux用户(root根用户、普通用户、系统用户)
  • linux用户组
  • Linux的本地登陆用户认证机制
  • Linux的远程登陆用户认证机制
  • Linux的统一身份认证中间件-PAM

2) Linux授权与访问控制机制

  • 文件所有者
  • 文件的访问权限
    R---读取
    W---写入
    X---执行
  • 文件的特殊执行权限
  • Linux访问机制的不足及改进

3) Linux安全审计机制

    连接时间日志
    进程控制日志
    错误日志记录

3 Linux系统远程攻防技术

远程网络上侵入Linux系统的主要方法

口令进行猜测攻击
安全漏洞利用
安装和执行恶意程序
  • Linux远程口令字猜测攻击

        口令猜测工具:
            Brutus:最快、最灵活的远程口令猜测破解工具
            THC Hydra:快速的网络身份认证口令猜测工具
            Cain and Abel
  • Linux网络服务远程渗透攻击
  • 攻击Linux客户端程序和用户
  • 攻击Linux路由器和监听器

    4 Linux系统本地安全攻防技术

    1)Linux本地特权提升

    特权提升途径:
    linux用户口令字破解
      利用sudo的缺陷进行特权提升
      利用用户态SUID程序漏洞进行特权提升
      针对SUID程序的本地缓冲区溢出攻击
      针对SUID程序的符号链接攻击
      针对SUID程序的竞争条件攻击
      针对SUID程序的共享函数库攻击
      利用内核空间代码漏洞进行特权提升
      利用系统配置不当实施本地特权提升

    2) Linux系统上的消踪灭迹

    3) Linux系统远程控制后门程序

kali视频学习

Kali漏洞利用之SET

Social Enginnering Toolkit(SET)是一个开源、Python驱动的社会工程学渗透测试工具,提供了非常丰富的攻击向量库。是开源的社会工程学套件,通常结合metasploit来使用。

问题:没有此软件,输入命令setoolkit显示未找到命令

解决:1)使用命令git clone https://github.com/trustedsec/social-engineer-toolkit/进行下载

2)命令ls

3)进入social-engineer-toolkit ,命令为cd social-engineer-toolkit根据readme 进行操作,依次输入下面的命令

使用命令setoolkit进入

菜单选项

1 是社会工程学攻击

2 是Fast-Track渗透测试

3 是第三方模块

输入1回车

出现11个模块

1.鱼叉式钓鱼攻击
2.网站攻击
3.介质感染攻击
4.创建Payload并监听
5.群发邮件攻击
6.基于Arduino的攻击
7.短信欺骗攻击
8.无线接入点攻击
9.二维码攻击
10.powershell攻击
11.第三方模块

鱼叉式钓鱼攻击

继续上面的步骤,输入1回车

此攻击向量主要目的为发送存在恶意软件的钓鱼邮件,相应的payload可以选择不同的漏洞,输入2 回车

网站攻击框架

此时开放一个webServer服务,如果对方访问此页面,若系统存在漏洞触发条件,则会被植入后门。如Java Applet Attack 方法就需要目标有Java运行环境。为了仿真,可以选择自建模版或克隆一个网站。

同时提供一个功能可以复制一个网站,先输入1回车,再输入2 回车

介质感染攻击

借助Autorun.inf执行Exploit得到一个返回的shell,也可以结合Metasploit的后门

创建Payload和监听器

与Metasploit给出的Payload类似,创建一个后门发给对方

群发邮件攻击

输入5回车,支持导入列表并向列表中的每个人发送邮件

继续选择8 无线接入点攻击

无线接入点攻击会创建一个虚拟无线AP,通过接入点ap可以抓取所有连接进来的设备流量。

二维码攻击

填入一个危险的URL,使得被攻击者扫描二维码自动访问页面而中招

powershell攻击

针对vista以上的攻击模块。

第三方模块

Fast-Track攻击模块

Kali嗅探欺骗与中间人攻击

(1) 为Kali设置开启端口转发

echo 1 > /proc/sys/net/ipv4/ip_forward

cat /proc/sys/net/ipv4/ip_forward修改为1

(2)设置ssltrip

为了劫持SSL数据,需要https数据变为http:

iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8081

让sslstrip在8081端口监听,需要使https数据变为http,让sslrtrip在8081端口监:

sslstrip -l 8081

(3)ettercap的准备

ettercap是一套用于中间人攻击的工具。和dsniff套件齐名。支持插件和过滤脚本,直接将账号、密码显示出来,不用人工提取数据。如果是第一次中间人攻击操作,那么要对kali下的etteracp做点配置。

然后使用ettercap中间人攻击工具,使用前我们修改一下配置文件:

配置文件是/etc/ettercap/etter.conf,首先要将ec_uid、ec_gid都变为0

将下面Linux分类下的if you use iptables这一行,将注释去掉,保存退出

将注释去掉打开图形界面时说出错,不注释掉就可以打开

打开图形化界面 ettercap -G,选择嗅探网卡 默认eth0

在sniff下选择unified sniffing,默认使用eth0嗅探网卡

在host下选择scan for hosts扫描内网信息

完毕后打开host list

将网关add to target 1 ,想攻击的目标add to target 2,mitm选项卡ARPpoisoning

然后start sniffing

  • Dsniff套装介绍

    Dsniff套装主要是arpspoof和dsniff,前者用来进行arp欺骗,后者用于嗅探。进行攻击步骤如下:

    进行arp欺骗:

    arpspoof [-i interface(网卡)] [-c own|host|both(欺骗方式,通常是both)] [-t target(目标)] [-r] host(网关)

    进行嗅探:

    dsniff [-cdmn] [-i interface | -p pcapfile] [-s snaplen] [-f services] [-t trigger[,...]] [-r|-w savefile] [expression]

    -c打开半双工TCP流,允许在使用arpspoof时进行正确的嗅探操作;

    -d启动调试模式;

    -f以/etc/service格式从文件中加载触发器(也就是口令嗅探的服务类型);

    -I使用特定的网络接口;

    -m使用dsniff.magic文件通过在magic文件中定义的特征尝试自动判断协议;

    -n不执行主机查找;

    -r从前面保存的会话中读取被嗅探的数据;

    -s最多对报文的前个字节进行嗅探,如果用户名和口令信息包含在随后的默认1024字节界限中;

    -t使用格式port/proto=servise;来加载一个以逗号界定的触发器集;

  • 会话劫持

    这里主要以cookies进行举例,说明会话劫持的用法。

    开始arp欺骗;

    arpspoof -i wlan0 -t 192.168.1.1 192.168.1.102

    捕获数据报:

    tcpdump -i wlan -w test.cap

    等一段时间,估计目标会登录网站了,我们开始处理捕获的数据包:

    forret -r test.cap

    如果捕获的数据包没什么问题,而且确定开启了端口转发,那么经过处理的数据包会自动生成hamster.txt

    接下来运行hamster hamster

    会提示浏览器设置代理为http://127.0.0.1:1234

    接着在浏览器中代开hamster:

    http://hamster

    选择目标和可能的登录认证地址,然后点击链接会发现劫持成功。

  • 图片截获

    利用Driftnet这款工具我们可以看到受害人在访问网站的图片。

    首先依然使用arpspoof启动arp欺骗,然后启动driftnet:

    driftent -i

    此时弹出一个小窗口,当目标访问有图片的网站的时候,攻击者就能在这个小窗口看到。

  • DNS欺骗

    利用Dsniff套装中的dnsspoof或者ettercap的dnsspoof插件,我们可以完成对受害者的dns欺骗。

    在开始欺骗前,首先我们要编辑一个自己的hosts文件,放在方便访问的地方。内容和本机自带的hosts内容差不多,只是把你想欺骗的域名和想要欺骗到哪里的地址写好(通常是攻击者指定的服务器,用来执行浏览器溢出或者java applet攻击,用来获取受害者的计算机访问权限)

    host文件:

    127.0.0.1 www.baidu.com

    上面是一个hosts文件示例,把百度定向到了本机。我们把它保存成hosts,位于/root目录下。

    然后启动dnsspoof:

    dnsspoof -i wlan0 -f /root/hosts

    等受害者访问百度观察效果。

  • URL监控

    利用Dsniff套装中的urlsnarf工具,我们对TCP80、3128、8080端口的HTTP通信进行解析,并且可以将嗅探到的所有HTTP请求转存为通用日志格式(Common Log Format,CLF),这种格式是许多Web服务器所使用的,例如IIS和Apache,事后可以很方便的使用一些日志分析工具来分析记录结果。

    Usage:urlsnarf [-n] [-i interface | -p pcapfile] [[-v] pattern [expression]]

  • 下载软件监控

    利用Dsniff套装中的filesnarf工具,我们可以从嗅探到的NFS通信中,选定某个文件,转存到本地当前工作目录。

    Ussage:filesnarf [-i interface | -p pcapfile] [6)会话劫持

    这里主要以cookies进行举例,说明会话劫持的用法。

    开始arp欺骗;

    arpspoof -i wlan0 -t 192.168.1.1 192.168.1.102

    捕获数据报:

    tcpdump -i wlan -w test.cap

    等一段时间,估计目标会登录网站了,我们开始处理捕获的数据包:

    forret -r test.cap

    如果捕获的数据包没什么问题,而且确定开启了端口转发,那么经过处理的数据包会自动生成hamster.txt

    接下来运行hamster hamster

    会提示浏览器设置代理为http://127.0.0.1:1234

    接着在浏览器中代开hamster:

    http://hamster

    选择目标和可能的登录认证地址,然后点击链接会发现劫持成功。

Kali权限维持之后门

网络攻防环境搭建

原文地址:https://www.cnblogs.com/2017yaya/p/8962513.html

时间: 2024-10-16 19:53:23

2017-2018-2 20179225 《网络攻防与实践》 第8周作业的相关文章

2017-2018-2 20179207 《网络攻防技术》第五周作业

kali漏洞分析之数据库评估(一)(二) web层与数据库连接的漏洞在安全测试中并不少见,owasp曾经的top之首sql注入漏洞. 数据库评估软件 1.bbqsql 是一个pyth编写的盲注工具,当检测可疑的注入漏洞时会很有用.同时bbqsql是一个半自动工具,允许客户自定义参数. 2.dbpwaudit 数据库用户名密码枚举工具. DBPwAudit - DataBase Password Audit 功能:通过挂载字典对目标数据库进行密码暴力猜解, 目前支持的数据库包括SQLServer.

2017-2018-2 20179202《网络攻防技术》第五周作业

漏洞分析之数据库评估(一) BBQSQL 一种用Pyhthon写的SQL盲注框架.当发动QL注入漏洞攻击时,它将非常有用.BBQSQL是半自动工具,允许许多难以触发的SQL注入变得用户化.BBQSQL最重要的是它不关心数据或数据库. DBPwAudit 功能:通过挂载字典对目标数据库进行密码暴力猜解,目前支持的数据库包括SQLServer.MySQL.Oracle.DB2 破解SQLServer数据库命令实例: ./dbpwaudit -s IP -d master(数据库名称) -D mssq

2017-2018-2 20179305《网络攻防技术》第七周作业

教材学习 windows系统架构 Windows操作系统内核的基本模块 Windows执行体 Windows内核体 设备驱动程序 硬件抽象层 Windows窗口与图形界面接口内核实现代码 系统支持进程 环境子系统服务进程 服务进程 用户应用软件 核心子系统DLL Windows的虚拟内存空间 系统核心内存区间 用户内存区间 Windows网络组件模块 各种网卡硬件的设备驱动程序 NDIS库及miniport驱动程序 TDI传输层,也称为网络协议驱动 网络API DLL及TDI客户端 网络应用程序

2017-2018-2 20179317 《网络攻防技术》第七周作业

教材学习内容总结 Windows操作系统的基本结构如下图,分别运行于处理器特权模式(ring0)的操作系统内核,以及运行在处理器非特权模式(ring3)的用户空间代码 Windows操作系统内核的基本模块:Windows执行体.Windows内核体.设备驱动程序.硬件抽象层.Windows窗口与图形化界面接口内核实现代码.系统支持进程.环境子系统服务进程.服务进程.用户应用软件.核心子系统DLL 在上述系统架构下,Windows操作系统内核中实现了如下的核心机制:Windows进程和线程管理机制

2017-2018-2 20179202《网络攻防技术》第七周作业

漏洞利用之检索与利用 searchsploit 会通过本地的 Exploit-DB查找漏洞信息.需要注意的是,searchsploit 使用 AND 运算符,使用的术语越多,滤除的结果越多. 漏洞利用之Metasploit基础 1.启动服务: 在kali中使用metasploit,需要先使用命令service postgresql start开启PostgreSQL数据库服务,使用命令msfconsole开启metasploit服务,然后就可以完整的利用msf数据库查询exploit和记录. 2

2017-2018-2 20179223《网络攻防技术》第七周作业

教材内容学习 一.Windows操作系统框架 1.Windows操作系统的发展与现状 Windows在桌面操作系统中占有非常高的市场份额,Windows XP系统在国内仍有大量的用户 2.Windows操作系统基本结构 (1)Windows操作系统内核基本模块 +Windows执行体:Windows内核核心文件ntoskrnl.exe的上层接口 +Windows内核体:Windows内核核心文件ntoskrnl.exe中函数实现与硬件体系结构支持代码,实现底层的操作系统功能 +设备驱动程序:包括

2017-2018-2 20179207 《网络攻防技术》第十周作业

缓冲区溢出攻防研究 Linux 缓冲区溢出 原理 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. 实践(实验楼环境下) 系统用户名shiyanlou 实验楼提供的是64位Ubuntu linux,而本次实验为了方便观察汇编语句,我们需要在32位环境下作操作,因此实验之前需要做一些准备. 1.输入命令安装一些用于编译32位C程序的东西

2017-2018-2 20179317 《网络攻防技术》 第五周作业

一.视频学习总结 16.KaliSecurity - 漏洞分析之数据库评估(一) 了解Kali Linux下漏洞分析工具中数据库评估工具的使用1.BBQSqlBBQSQL是一个Python编写的盲注工具,当检测可疑的注入漏洞时会很有用,同时它也是一个半自动工具,允许用户自定义参数.2.DBPwAudit:数据库用户名密码枚举工具3.HexorBase:图形化的密码破解与连接工具,开源.4.Jsql Injection(java书写)JSQL是一款轻量级安全测试工具,可以检测SQL注入漏洞.它跨平

2017-2018-2 20179317 卿爽 《网络攻防技术》第十周作业

实验一 nmap与Wireshark 利用网线将两台电脑连接起来,每台电脑均使用Kali虚拟机作为攻防环境,其中攻击方IP:192.168.1.40,防守方:192.168.1.20,攻击方通过nmap工具探测防守方,防守方利用tcpdump工具与Wireshark工具通过抓包分析对方攻击目的. 首先,防守方使用tcpdump抓包: 然后,攻击方使用nmap进行探测: 最后针对抓到的数据包利用Wireshark进行分析,如下: 可以看到,此处抓取了大量tcp包,并且是针对不同端口,因而可以分析出

2017-2018-2 20179305《网络攻防技术》 第十一周作业

研究缓冲区溢出的原理,至少针对两种数据库进行差异化研究 缓冲区溢出是指当计算机向缓冲区内填充数据位数时,超过了缓冲区本身的容量,溢出的数据覆盖在合法数据上,理想的情况是程序检查数据长度并不允许输入超过缓冲区长度的字符,但是绝大多数程序都会假设数据长度总是与所分配的储存空间相匹配,这就为缓冲区溢出埋下隐患.操作系统所使用的缓冲区 又被称为"堆栈".在各个操作进程之间,指令会被临时储存在"堆栈"当中,"堆栈"也会出现缓冲区溢出. 原理 缓冲区溢出(B