网络攻击(一)--安全渗透简介

news2024/11/20 6:30:56

1. 安全渗透概述

  • 目标
    • 了解渗透测试的基本概念
    • 了解渗透测试从业人员的注意事项

1.1. 写在前面的话

在了解渗透测试之前,我们先看看,信息安全相关的法律是怎么样的

  • 中华人民共和国网络安全法

    • 《中华人民共和国网络安全法》由全国人民代表大会常务委员会于2016年11月7日发布,自2017年6月1日起施行

    • 中华人民共和国网络安全法 -- 中国人大网官方版本

    • 第四十四条 任何个人和组织不得窃取或者以其他非法方式获取个人信息,不得非法出售或者非法向他人提供个人信息。

    • 第六十四条 第二款 违反本法第四十四条规定,窃取或者以其他非法方式获取、非法出售或者非法向他人提供个人信息,尚不构成犯罪的,由公安机关没收违法所得,并处违法所得一倍以上十倍以下罚款,没有违法所得的,处一百万元以下罚款。

  • 《中华人民共和国刑法》

    • 《中华人民共和国刑法(修订)》由1997年3月14日第八届全国人民代表大会第五次会议修订,1997年3月14日中华人民共和国主席令第八十三号公布,自1997年10月1日起施行

    • 《中华人民共和国刑法修正案(九)》由2015年8月29日第十二届全国人民代表大会常务委员会第十六次会议通过,自2015年11月1日起施行。(对285条,286条有修订)

    • 第二百八十五条: 非法获取计算机信息系统数据罪, 非法获取计算机信息系统数据、非法控制计算机信息系统罪,是指违反国家规定,侵入国家事务、国防建设、尖端科学技术领域以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,情节严重的行为。

    • 第二百八十六条:破坏计算机信息系统罪,破坏计算机信息系统罪是指违反国家规定,对计算机信息系统功能或计算机信息系统中存储、处理或者传输的数据和应用程序进行破坏,或者故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的行为。

1.2. 渗透测试介绍

渗透测试是一门技术,一门用来模拟黑客的攻击方法,对信息系统进行安全评估的测试技术

关于渗透测试(penetration test), 目前并没有一个标准的定义,国外一些安全组织达成共识的通用说法是:渗透测试是通过模拟恶意黑客的攻击方式,用来评估计算机网络系统安全的一种评估手段

我们可以从如下几点进行理解:

  • 渗透测试是一门技术
  • 渗透测试是一门用来进行安全态势评估的测试技术t渗透测试这门工作包括善用渗透工具(利用现成的)、开发渗透测试程序(脚本)(开发定制的)等等。
  • 由于是模拟恶意黑客的攻击方法, 所以渗透测试带有某种“破坏性”, 要注意风险规避
  • 同样是模拟恶意黑客的攻击行为,往往充满了什么色彩

还有的定义给出:渗透测试(Penetration Testing)是一种通过模拟攻击者的技术与方法,挫败目标系统的安全控制措施并获得控制访问权的安全测试方法

  • 如何规避法律风险

    很简单,获取渗透测试主机的有效授权。

小结

渗透测试是一门技术,一门用于对信息系统进行安全评估的测试技术。 技术本身没有什么正义、邪恶之分。 关键是看你怎么用。

你被授权进行渗透测试,那你就是在保护地球, 维护世界和平, 主持武林正义。。。。

你没有被授权, 或者是没有这种法律意识, 那么。。。。


1.3. PTES标准中的渗透测试阶段

PTES:Penetration Testing Execution Standard, 渗透测试执行标准,已被安全业界中几个领军企业所采纳。

官网地址:The Penetration Testing Execution Standard

PTES标准中的渗透测试阶段是用来定义渗透测试过程,并确保客户组织能够以一种标准化的方式来扩展一次渗透测试,而无论是由谁来执行这种类型的评估。

  • 前期交互阶段

  • 情报搜集阶段

  • 威胁建模阶段

  • 漏洞分析阶段

  • 渗透攻击阶段

  • 后渗透攻击阶段

  • 报告阶段

    我们重点关注 情报搜集和渗透攻击, 其余前期交互就是“聊天”, 威胁建模和漏洞分析就是确定“从哪儿攻击”, 内容“物虚”较多。实操没有。大家作为简单了解该阶段内容即可。

2. Kali Linux

  • 目标
    • 了解渗透测试人员的工作平台-kali linux
    • 知道kali linux的安装方法。

2.1. Kali Linux 介绍

  • Kali Linux是一个基于Debian的Linux发行版,
  • 集成了300多个安全和取证方面的相关工具, 专为渗透测试人员准备,

  • Kali Linux的前身是BackTrack Linux发行版。

  • Back Track是基于Ubuntu的一个Linux发行版。(补充: ubuntu也是基于Debian的Linux发型版)

  • 它由Offensive Security Ltd维护和资助,最先由Offensive Security的MatiAharoni和Devon Kearns通过重写Back Track来完成。

  • Kali Linux有32位和64位的镜像,可用于x86指令集。同时它还有基于ARM架构的镜像,可用于树莓派和三星的ARM Chromebook。用户可通过硬盘、Live CD或Live USB来运行Kali Linux操作系统。


2.2. 安装Kali Linux

如今Linux的安装过程已经非常“傻瓜”化,只需要轻点几下鼠标,就能够完成整个系统的安装。Kali Linux操作系统的安装也非常简单。本节将分别介绍安装Kali Linux至硬盘、USB驱动器、树莓派、VMware Workstation和Womuare Tods的详细过程。

2.2.1. ISO下载

安装到硬盘是最基本的操作之一。该工作的实现可以让用户不使用DVD,而正常的运行Kali Linux。在安装这个全新的操作系统之前,需要做一些准备工作。例如,从哪里得到Linux?对电脑配置有什么要求?……下面将逐一列出这些要求。

  • Kali Linux安装的磁盘空间的最小值是8GB。为了便于使用,这里推荐至少25GB去保存附加程序和文件。
  • 内存最好为512MB以上。
  • Kali Linux的下载地址,下载界面如图1.1所示。

下载完ISO文件后, 选中安装virtualbox虚拟机管理管理软件。 关于虚拟机安装步骤,本课程就不再详述,课下探讨。

2.2.2. 下载虚拟机镜像

当然也可以直接下载基于virtualbox的虚拟机镜像, 如下图所示:

建议选择64位虚拟机镜像, 如果你选用VMware的话,也可以直接下载VMware虚拟机镜像

2.2.3. 开机界面

Kali Linux系统开机运行后, 界面如下图所示:

点击做上角的应用程序, 会列出如下的渗透测试工具, 见下图

2.3. Kali Linux 系统更新

当用户使用一段时间以后,可能对总是在没有任何变化的系统中工作感到不满,而是渴望能像在Windows系统中一样,不断对自己的Linux进行升级。另外,Linux本身就是一个开放的系统,每天都会有新的软件出现,Linux发行套件和内核也在不断更新。在这样的情况下,学会对Linux进行升级就显得非常迫切了。本节将介绍Kali的更新与升级。

更新与升级Kali的具体操作步骤如下所示。

  • 执行lsb_release -a命令查看当前操作系统的所有版本信息
root@Kali-Panda:~# lsb_release -a
No LSB modules are available.
Distributor ID:    Kali
Description:    Kali GNU/Linux Rolling
Release:    kali-rolling
Codename:    kali-rolling
  • 配置软件源, 国内建议选择“中科大”的源, (综合来书,中科大的源还是比较靠谱)
root@Kali-Panda:~# cat /etc/apt/sources.list.d/ustc.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
  • 添加完软件源,需要更新软件包列表后才可以使用。

更新软件包列表,执行命令如下所示:

root@Kali-Panda:~# apt-get update
  • 软件更新(软件包升级)
root@Kali-Panda:~# apt-get dist-upgrade 

root@Kali-Panda:~# apt-get dist-upgrade 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在计算更新... 完成
下列软件包是自动安装的并且现在不需要了:
  acccheck 。。。
使用'apt autoremove'来卸载它(它们)。
y下列软件包将被【卸载】:
  gnome-shell-extension-workspacestodock 。。。
下列【新】软件包将被安装:
  apt-config-icons bolt clang-6.0
  。。。。
  您希望继续执行吗? [Y/n] 

键入y后,选择升级软件包。

2.4. Kali Linux 基本设置

在前面学习了Kali Linux操作系统的安装,安装成功后就可以登录到系统了。登录系统后,就可以使用各种的渗透工具对计算机做测试。为了方便后面章节内容的学习,本节将介绍一下Kali Linux的基本设置。

  • 启动默认的服务

Kali Linux自带了几个网络服务,它们是非常有用的。但是默认是禁用的。在这里,将介绍使用各种方法设置并启动每个服务。

  • 启动Secure Shell(SSH)服务

启动Secure Shell(SSH)服务。执行命令如下所示:

root@Kali-Panda:~# systemctl start ssh.service

看到以上的输出表示SSH服务已经启动。为了确认服务的端口是否被监听,执行如下所示的命令:

root@Kali-Panda:~# netstat -apn | grep ":22"
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2507/sshd
tcp6       0      0 :::22                   :::*                    LISTEN      2507/sshd 

当然也可以用systemclt查看ssh的状态

root@Kali-Panda:~# systemctl status ssh.service 
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: disabled)
   Active:** active (running)** since Mon 2018-07-23 12:28:00 CST; 4min 21s ago
  Process: 593 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
  Process: 591 ExecReload=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
  Process: 2506 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 2507 (sshd)
    Tasks: 1 (limit: 1916)
   Memory: 1.8M
   CGroup: /system.slice/ssh.service
           └─2507 /usr/sbin/sshd -D

7月 23 12:28:00 Kali-Panda systemd[1]: Starting OpenBSD Secure Shell server...
7月 23 12:28:00 Kali-Panda sshd[2507]: Server listening on 0.0.0.0 port 22.
7月 23 12:28:00 Kali-Panda sshd[2507]: Server listening on :: port 22.
7月 23 12:28:00 Kali-Panda systemd[1]: Started OpenBSD Secure Shell server.
  • 停止ssh服务

停止一个服务的语法格式:systemctl stop <servicename>

表示用户想要停止的服务。

停止ssh服务,执行命令如下所示:

root@Kali-Panda:~# systemctl stop ssh.service

可以通过查看ssh.service的状态信息, 已经变为inactive (dead), 可以看到ssh服务停止成功。

root@Kali-Panda:~# systemctl status ssh.service 
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: disabled)
   Active: inactive (dead) since Mon 2018-07-23 12:35:07 CST; 17s ago
  Process: 593 ExecReload=/bin/kill -HUP $MAINPID (code=exited, status=0/SUCCESS)
  Process: 591 ExecReload=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
  Process: 2507 ExecStart=/usr/sbin/sshd -D $SSHD_OPTS (code=exited, status=0/SUCCESS)
  Process: 2506 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 2507 (code=exited, status=0/SUCCESS)

7月 23 12:28:00 Kali-Panda systemd[1]: Starting OpenBSD Secure Shell server...
7月 23 12:28:00 Kali-Panda sshd[2507]: Server listening on 0.0.0.0 port 22.
7月 23 12:28:00 Kali-Panda sshd[2507]: Server listening on :: port 22.
7月 23 12:28:00 Kali-Panda systemd[1]: Started OpenBSD Secure Shell server.
7月 23 12:35:07 Kali-Panda systemd[1]: Stopping OpenBSD Secure Shell server...
7月 23 12:35:07 Kali-Panda sshd[2507]: Received signal 15; terminating.
7月 23 12:35:07 Kali-Panda systemd[1]: Stopped OpenBSD Secure Shell server.
  • 设置服务开机启动

设置服务开机启动的语法格式如下所示: systemctl enable <servicename>

表示用户想要开机启动的服务。

设置SSH服务开启自启动:

root@Kali-Panda:~# systemctl enable sshd.service
Synchronizing state of ssh.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable ssh
  • 查看当前系统开机自启列表
root@Kali-Panda:~# systemctl list-unit-files | grep enabled
accounts-daemon.service                                          enabled
anacron.service                                                  enabled
autovt@.service                                                  enabled
binfmt-support.service                                           enabled
console-setup.service                                            enabled
...
ssh.service                                                      enabled
sshd.service                                                     enabled

2.5. 随堂练习

  • 判断题: 传统中所用的渗透测试平台Back Track 现在可以用Kali Linux替代 ()

3. 前期交互阶段

  • 目标
    • 了解前期交互阶段需要完成的工作

3.1. 前期交互阶段的工作

前期交互阶段通常是由你与客户组织进行讨论,来确定渗透测试的范围和目标。

这个阶段最为关键的是需要让客户组织明确清晰地了解渗透测试将设计哪些目标,而这个阶段也为你提供了机会,来说服客户走出全范围渗透测试的理想化远景,选择更加现实可行的渗透测试目标来进行实际实施。

简单的说,就是解决一个问题: 我N月(年、月、日)就干完这N项的活儿,您老到时给钱儿痛快点。

这个阶段的工作把评估项目的每一个需求参数都落实到项目的测试计划、限定因素、业务指标、和进度安排中。

  • 收集需求: 以口头交流和书面询问的形式,积累目标环境的有关信息

  • 筹划工作: 测试计划的准备工作收许多因素的影响, 包括合同协议、成本分析、资源分配等

  • 边界分析: 明确渗透测试任务限制因素的工作

  • 明确业务指标: 在渗透测试项目中,该阶段工作使技术目标与业务目标保持一致。

  • 项目管理和统筹调度: 此过程旨在使渗透测试过程中的每个步骤与其他步骤形成时间上的配合

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1294315.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot+线程池实现高频调用http接口并多线程解析json数据

场景 SpringbootFastJson实现解析第三方http接口json数据为实体类(时间格式化转换、字段包含中文)&#xff1a; SpringbootFastJson实现解析第三方http接口json数据为实体类(时间格式化转换、字段包含中文)-CSDN博客 Java中ExecutorService线程池的使用(Runnable和Callable多…

【conda】利用Conda创建虚拟环境,Pytorch各版本安装教程(Ubuntu)

TOC conda 系列&#xff1a; 1. conda指令教程 2. 利用Conda创建虚拟环境&#xff0c;安装Pytorch各版本教程(Ubuntu) 1. 利用Conda创建虚拟环境 nolonolo:~/sun/SplaTAM$ conda create -n splatam python3.10查看结果&#xff1a; (splatam) nolonolo:~/sun/SplaTAM$ cond…

应用现代化加速企业数字化转型

目录 一、数字化转型的必要性 二、应用现代化的推动力 数字化时代&#xff0c;企业正面临着前所未有的挑战和机遇。为了保持竞争力&#xff0c;许多企业正在寻求数字化转型&#xff0c;以提升运营效率、优化客户体验、创新商业模式。本文将探讨如何通过应用现代化加速企业数字化…

《算法竞赛进阶指南》数论篇

下述理论主要参考书目&#xff1a; 电子版pdf:算法竞赛进阶指南(p133-150) 文章目录 下述理论主要参考书目&#xff1a; [电子版pdf:算法竞赛进阶指南(p133-150)](http://www.j9p.com/down/536233.html)首先补充两个前置知识&#xff1a;约数和最大约数有关性质&#xff0c;可选…

二层交换原理

二层交换设备工作在OSI模型的第二层&#xff0c;即数据链路层&#xff0c;它对数据包的转发是建立在MAC&#xff08;Media Access Control &#xff09;地址基础之上的。二层交换设备不同的接口发送和接收数据独立&#xff0c;各接口属于不同的冲突域&#xff0c;因此有效地隔离…

Linux学习笔记之八(进程间的共享内存)

Linux 1、引言2、实现共享内存2.1、创建一个共享内存2.2、将共享内存链接到进程空间2.3、断开与共享内存的链接2.4、对共享内存进行后续操作 3、应用实例 1、引言 在之前一篇文章Linux学习笔记之六&#xff08;进程之间的管道通信和信号处理&#xff09;中我讲了进程间可以通过…

如何快速构建知识服务平台,打造个人或企业私域流量

随着互联网的快速发展&#xff0c;传统的知识付费平台已经不能满足用户的需求。而SaaS知识付费小程序平台则是一种新型的知识付费方式&#xff0c;具有灵活、便捷、高效等特点&#xff0c;为用户提供了更加优质的付费知识服务。本文将介绍如何搭建自己的SaaS知识付费小程序平台…

T天池SQL训练营(五)-窗口函数等

–天池龙珠计划SQL训练营 5.1窗口函数 5.1.1窗口函数概念及基本的使用方法 窗口函数也称为OLAP函数。OLAP 是OnLine AnalyticalProcessing 的简称&#xff0c;意思是对数据库数据进行实时分析处理。 为了便于理解&#xff0c;称之为窗口函数。常规的SELECT语句都是对整张表进…

elasticsearch-head 启动教程

D:\elasticsearch-head-master>grunt server ‘grunt’ 不是内部或外部命令&#xff0c;也不是可运行的程序 或批处理文件。 npm install -g grunt-clinpm install

资源三号5米全国数字高程模型DEM

简介 近些年来&#xff0c;国产高分辨率遥感卫星的发展突飞猛进&#xff0c;天绘系列卫星、资源三号卫星、高分一号、二号卫星以不断提高的影像空间分辨率、逐步增强的影像获取能力、较好的影像现势性等特点逐步打破了国外商业卫星的主导地位&#xff0c;开始广泛服务于各…

Andorid sudio 换行方法

1.遇到的问题&#xff0c;二维码内容要换行 String text "成绩&#xff1a;1000 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff1a;张三 \n姓名&#xff…

Java数字化健康卫生智慧云HIS系统源码

基于云计算技术的B/S架构云HIS集挂号、处方、收费、取药、病历于一体,完全适配各类中小型医院、诊所。 一、云 HIS定义 1、云 HIS 系统是运用云计算、大数据、物联网等新兴信息技术&#xff0c;按照现代医疗卫生管理要求&#xff0c;在一定区域范围内以数字化形式提供医疗卫生…

细讲结构体

结构体是一些值的集合&#xff0c;这些值就是成员变量&#xff0c;这些变量可以是不同类型的。 当我们存放一个学生的信息是&#xff0c;包括性别&#xff0c;姓名&#xff0c;学号&#xff0c;年龄等内容&#xff0c;这些值是不同类型的&#xff0c;这是我们就可以使用结构体来…

实战rce绕过getshell曲折经历

tp rce漏洞 该网站debug显示该站点的tp版本为5.0.5&#xff0c;宝塔搭建 直接上rce payload 执行成功 问题点&#xff1a; 1.此站点disable_functions函数基本都禁用了&#xff0c;另外加载了禁用eval的扩展 2.web目录不允许出现.php后缀文件&#xff0c;写入后会立即删除 绕…

名创优品出海更难了,Q3净利增速放缓

近日&#xff0c;有媒体报道称&#xff0c;名创优品受市场流传针对公司的做空报告&#xff0c;叠加高管团队两次减持&#xff0c;共计180万股&#xff0c;若对应25美元的价格&#xff0c;则达4500万美元(约3.2亿元)。 12月5日&#xff0c;其港股收盘股价下跌14.04%&#xff1b…

本地团购分销:解密最新赚钱模式,带你开启财富之门!APP小程序H5三端源码交付,支持二开!

近年来&#xff0c;随着互联网的迅猛发展和电子商务的普及&#xff0c;本地团购分销逐渐成为了一种热门的赚钱模式。它不仅为消费者提供了更多的购物优惠&#xff0c;同时也给商家和分销商带来了可观的利润。在这篇文章中&#xff0c;我们将详细介绍本地团购分销的运作原理和盈…

15Linux、GIT及相关相似面试题、PostMan

Linux和git相似是命令相关的层次结构相似 Linux Linux Linux常用操作_linux操作-CSDN博客 程序员常用的10个Linux命令_简介linux系统中的10个常用命令及功能-CSDN博客 help help 命令 &#xff1a;获得 shell 内置命令的帮助信息&#xff0c;常用形式 help cd ls --help …

【C/PTA —— 15.结构体2(课内实践)】

C/PTA —— 15.结构体2&#xff08;课内实践&#xff09; 7-1 计算职工工资7-2 计算平均成绩7-3 找出总分最高的学生7-4 通讯录的录入与显示 7-1 计算职工工资 #include<stdio.h> #include<stdlib.h> typedef struct GZ {char name[6];double j;double f;double z;…

【Python系列】Python函数

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

2023 金砖国家职业技能大赛网络安全省赛理论题样题(金砖国家未来技能挑战赛)

2023 金砖国家职业技能大赛网络安全省赛理论题样题&#xff08;金砖国家未来技能挑战赛&#xff09; 一、参加比赛的形式 团队参与&#xff0c;每队2名选手&#xff08;设队长1名&#xff09;。 二、项目项目阶段简介 项目由四个阶段组成&#xff0c;将按顺序完成。向参与者…