当前位置: 首页 > article >正文

网络安全学习-常见安全漏洞检测以及修复方法-1

渗*透测试

  • 渗透测试就是模拟攻击者入侵系统,对系统进行一步步渗透,发现系统的脆弱环节和隐藏风险。
  • 形成测试报告提供给系统的所有者,所有者根据报告对系统进行加固,提升系统的安全性,防止真正的攻击者入侵。

渗透测试步骤

  • 准备阶段
  • 信息收集
  • 漏洞探测
  • 漏洞利用
  • 内网转发
  • 内网渗透
  • 痕迹清除
  • 撰写报告

准备阶段任务

  • 定制实施方案
  • 渗透测试授权
  • 渗透测试目标确认
  • 测试环境确认
  • 渗透测试范围和深度
  • 渗透测试时间确认
  • 渗透测试风险管理

信息收集

  • 信息收i就是渗透测试前期的必要阶段,因为系统的风险通常存在于不易发现的脆弱环节。
  • 主动收集,直接对目标进行访问或者扫描,优点能够获取更多信息,劣势可能会在目标上留下记录
  • 被动信息收集,通过第三方服务收集目标的信息,优点是不会被目标发现,劣势,收集的信息较少
域名信息
  • 包括IP,whois,子域名,DNS记录

首先尧判断域名是否存在CDN的情况,可以利用CDN查询网站 如http://ping.chinaz.com,如果查询的出现的IP数量有多个,则该IP不是真实服务器的IP,可以通过查询主域名或者子域名,邮件服务器,以及查询DNS记录的方式获得真实IP

子域名收集工具有Layer子域名挖掘机,findomain,subDomainBrure等,除此值之外还可以利用第三方服务收i就子域名

公网信息

目标的任何相关信息,如员工邮箱,姓名,手机号。在github上等托管平台查找敏感信息和口令获取,如数据库信息,邮箱账号信息,源代码等。

网站指纹

包括四个方面

  • 服务器类型(windwos,linux)
  • 脚本类型(php,js,asp,apsx)
  • 网站容器(apache,nginx.tomcat,IIs)
  • 数据库类型( mysql,oracle,access,sqlserver)

常用的工具,whatweb,BugScaner等

开放端口
  • 22 ssh弱口令
  • 3306 mysql弱口令
  • 6379 redis未授权访问
  • 7001 weblogic相关漏洞
  • 8080 Tomcat相关漏洞

扫描工具nmap,railgun

敏感目录

敏感目录也是进行渗透测试的重要突破口,如后台目录可利用弱口令,SQL注入或者爆破的方式进入,以及对上传目录,mysql管理接口,phpinfo或者编辑器等利用

敏感目录扫描工具有,御剑,dirbuster,wwwscan,okadminifinder,dirmap

旁站和C段

旁站指的是同一服务器上其他的网站,当目标较难进行一步步渗透的情况下,可以通过旁站进行渗透,若能通过旁站拿到服务器的权限。

C段指的是同一内网网段内的其他服务器,指导是对与目标同一C段中的其中的一台服务器进行渗透并提权,再以得到的权限的这台服务器作为跳板对目标服务器进行渗透。

常用扫描工具
  • Nessus
  • X-SCAN
  • Nmap

漏洞探测

在进行信息收集之后,就要对网站进行漏洞探测,

网络安全学习-常见安全漏洞检测以及修复方法-1_服务器

漏洞探测思路

对漏洞的探测并非没有方向,而是尧根据收集的信息,对可能出现的漏洞进行排查;

  • 注入型漏洞

本质上是由于违背“数据与代码分离原则”产生的漏洞。利用条件两个,一个是用户能够控制数据的输入,二是代码拼凑用户输入的数据,把用户输入的数据错当成代码执行了。

主要包括SQL注入漏洞,XXE漏洞,CRLF注入,命令执行和代码执行漏洞。

  • 文件型号漏洞

主要包括文件上传漏洞,文件解析漏洞,文件包含漏洞,目录遍历漏洞和任意文件读取或者下载漏洞。

  • 跨站型漏洞

该类型的漏洞主要通过跨站或者跨域的凡是进行攻击,主要包括SSRF漏洞,CORS漏洞,JSONP,XSS,CSRF.

  • 配置型漏洞

配置型漏洞往往是网站的运维人员错误配置所导致的,主要包括未授权访问漏洞,不安全的HTTP方法,Host头部攻击等。

  • 反序列化漏洞

反序列化漏洞是近年来常用漏洞,反序列化就是指把对对象转化为字节序列的过程,而反序列化就是他的逆过程。

常见的反序列化漏洞包括fastjson反序列化漏洞,JBoss反序列化漏洞,Apache Shiro反序列化漏洞,Weblogic反序列化漏洞等。

  • 逻辑型漏洞

  主要由于系统设计产生的逻辑漏洞,如在注册,登录和密码修改的功能上可能会存在逻辑漏洞,除此之外还包括条件竞争,HTTP参数污染,越权访问等。

  • 服务器型漏洞

Web服务器作为WEB应用的载体,若载体出现安全问题,那么WEB应用程序的安全性也就无法得到保证。

  • 第三方库漏洞

很多网站会利用第三方库来增强网站功能,但是若是第三方库本身出现漏洞,往往会成为一个攻击电。如fastjson,Struts2,JQuery,OpenSSL等。

内网转发

传统的网络安全是基于防火墙的物理边界防御,将网络的类型被分为内网和外网两大类。通常认为内网是安全的,内部的资产,人员都是已知的,可控的,而外部网络是危险的,所有的外部网络信息都是未知,无法控制的。

当我们获取外网服务器后的一定权限后,发现这台服务器可以直接或者间接的访问内网,而内网的一些主机不允许外网直接访问,这个时候就可以通过端口转发(隧道)将拿到的外网服务器设置为代理,这一过程就成为内网转发。

网络安全学习-常见安全漏洞检测以及修复方法-1_上传_02

内网转发思路

内网转发通常需要判断已经拿到的权限的主机是否出网,如果目标出网则可以使用反向代理,若目标不出网,则无法使用反向代理,此时可以根据使用正向代理或者端口复用。

网络安全学习-常见安全漏洞检测以及修复方法-1_上传_03

reGeorg结合proxychains代理链(HTTP隧道),适用于开放80端口情况

网络安全学习-常见安全漏洞检测以及修复方法-1_内网_04

例如,现在拿到了一台WINDOWS主机的账号,密码和权限,现在想通过远程RDP连接到该主机,该主机3389端口只对内网开放,不对外网开放,所以我们以使用lcx等本地端口转发,将3389流量转发到33389端口上。

内网渗透

常见的攻击方式。

  • 非域环境

MS17-010

哈西传递工具

Access Token窃取与利用

mimkatz获取RDP

  • 域环境

MS14-068

票据传递工具

AS-REP Roasting

Kerberoast工具

权限维持
  • web后门

1隐藏后门文件

2404页面隐藏后门

  • windows系统

1建立隐藏用户,在用户后面加$s

2在开机启动目录下放置木马文件

3MSF中的persistence模块

4远程桌面会话劫持

  • Linux系统

1.SSH后门

2crontab定时任务

3 SSh公钥

4创建SUID=0的用户

渗透后收尾确认

成果整理

形成报告

常见漏洞攻击

SQL注入

  • 原理

SQL注入分为平台层注入和代码层注入。前者是不安全的数据库配置或者数据平台漏洞所导致,后者由于程序的未对输入的内容进行过滤导致。本质上都是对由于对用户输入的合法性没有判断和过滤,导致前端输入后端的参数可控。

通过SQL注入,可以实现数据库的增删改查,如果数据库的权限足够大,还可以对操作系统执行操作。

网络安全学习-常见安全漏洞检测以及修复方法-1_上传_05

分类
  • 注入点类型

数字,字符串,搜索类型

  • 提交方式

GET,POST,Cookie,HTTP头

  • 获取方式

基于布尔盲注,基于时间的盲注,基于报错的盲注,联合查询注入,堆查询注入。

成因
$name=$_POST['USERNAME'];
$pwd=$_POST['PASSWORD'];
$sql="select * from admin where user='$name' and password='$pwd'";
$query=mysql_query($sql);

当正常数据用户名admin,密码123456的时候。

select * from admin where user='admin' and password='123456'

当构造sql语句提交用户名admin,密码1' or '1'='1的时候;

select * from admin where user='admin' and password= '1' or '1'='1'

网络安全学习-常见安全漏洞检测以及修复方法-1_上传_06

通用测试法则
  • 引号或者括号

http://abc.com/?id=1'

select * from tables where id='1";

sql解析引擎报错

  • 条件

1 and 1=1 数字型

1' and 1=1  字符型

select * from tables where id='1' and 1=1

访问正常

  • 条件

1 amd 1=2 数字型

1' and 1=2 字符型

select * from tables where id='1' and 1=2

访问异常

sql注入-盲注

在测试的时候还需要进行Timing Attack测试,即基于时间的盲注,在这种情况下通过and 1=2这种简单的方式是无法看出异常的。

如果在MySQL的Benchmark()函数是用于测试性能的,该函数能够让同一个函数执行若干次,使得结果反馈的时间比平时要长,通过时间长短变化判断注入语句是否成功。

SQL注入-漏洞的通用修复方案

 关键字过滤

网络安全学习-常见安全漏洞检测以及修复方法-1_内网_07

文件上传漏洞

文件上传指的是攻击者上传了一个可执行文件到服务器执行,该文件可能是木马,病毒,恶意脚本或者webshell.

该漏洞的成因是对用户上传的部分控制不足或者处理缺陷导致,用户可以越过本身权限向服务器上传可执行的动态脚本文件。

通常情况下会利用文件山川漏洞上传木马,并且工具连接获取webshell.

利用条件

1 网站要有能够上传文件的地方,因此遇到某个文件上传点的时候,应当测试是否存在文件上传漏洞

2 上传的文件能够被当成脚本文件执行,所以通常会和文件包含漏洞和文件解析漏洞一起利用

3 能够访问到文件上传文件的路径

4 一般用户上传文档,图片,攻击者上传可执行文件文件webshell

什么是webshell

网页后门或者网页木马,以asp,php,jsp,cgi等网页文件形式存在的一种命令执行环境;黑客可以通过访问  webshell上传下载为文件,查看数据库,执行操作系统命令。

利用思路

网络安全学习-常见安全漏洞检测以及修复方法-1_服务器_08

上传流程

网络安全学习-常见安全漏洞检测以及修复方法-1_服务器_09

Webshell

一句话木马

asp

<%execute(request("value"))%>

php

@eval($_POST[value];?>

aspx

<%@ Page Language="Jscript"%>
<%eval(Request.item["value"])%>

jsp

<% if(request.getParameter("f")!=null)
(new java.io.FileOutputStream(application.getRealPath("\\")+
request.getParameter("f"))).write(request.getParameter("t").getBytes());%>
.htaccess配置文件

htaccess文件是  apache 服务器中的一个配置文件,他负责相关目录下的网页配置。通过该文件,可以实现网页301重定向,定义404错误页面,改变文件扩展名,允许/阻止特定的用户或者目录访问,禁止目录列表,配置默认文档,配置RewriteRule规则等功能。

在渗透测试中,可以通过上传特定的htaccess文件,将所有的.jpg后缀文件当作php文件进行解析。

利用条件:

1 能够上传.htaccess文件,一般为黑名单限制。

2 AllowOverride All ,默认配置为关闭None

3 LoadModule rewrite_module modules/mod_rewrite.so 模块为开启状态

4.上传目录具有可执行权限

绕过校验

网络安全学习-常见安全漏洞检测以及修复方法-1_服务器_10

文件上传防御方式

1、客户端检测,使用js对上传图片检测,包括文件大小,文件扩展名,文件类型;

2、服务端检测,对文件大小,文件路径,文件扩展名,文件类型,文件内容进行检测,并对上传的为你教案随机命名等。而且服务端采用白名单的方式检查文件扩展名

3、服务端上传目录设置不可执行权限。

4、检查网站是否存在文件解析漏洞和文件包含漏洞;

5、将文件上传到单独的文件服务器,并且单独设置文件服务器域名。

6.上传文件的目录是http请求无法直接访问到的。

网络安全学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:

需要网络安全学习路线和视频教程的可以在评论区留言哦~

最后
  • 如果你确实想自学的话,我可以把我自己整理收藏的这些教程分享给你,里面不仅有web安全,还有渗透测试等等内容,包含电子书、面试题、pdf文档、视频以及相关的课件笔记,我都已经学过了,都可以免费分享给大家!

给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果。

黑客工具&SRC技术文档&PDF书籍&web安全等(可分享)

结语

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

特别声明:
此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失


http://www.kler.cn/a/564565.html

相关文章:

  • 泛微Ecode新增Button调用服务器中的JSP页面里的方法
  • Cannot resolve net.sf.json-lib:json-lib:2.4
  • 小红和小紫的拿球游戏(B组)
  • linux在vim中查找和替换
  • AI数据分析:用DeepSeek做数据清洗
  • ArcGIS Pro中打造精美高程渲染图的全面指南
  • 2025学年安徽省职业院校技能大赛 “信息安全管理与评估”赛项 比赛样题任务书
  • 数字IC后端设计实现OCC(On-chip Clock Controller)电路介绍及时钟树综合案例
  • 论文阅读笔记:Continual Forgetting for Pre-trained Vision Models
  • winfrom的progressBar 鼠标移上去显示 进度条的时间
  • 算法day2 dfs搜索2题
  • vscode下载安装教程(附安装包)vscode图文安装教程最新版
  • 一文掌握模拟登录的基本原理和实战
  • C++:多继承和虚继承
  • Javaweb后端数据库多表关系一对多,外键,一对一
  • 【斐波那契与7】
  • 什么是GPU
  • 北京大学DeepSeek与AIGC应用(PDF无套路下载)
  • 生成式对抗网络GAN
  • Golang学习笔记_39——策略模式