0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

安全测试工程师主要涉及哪些内容

工程师人生 来源:wv 作者:简书网 2019-09-11 14:37 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、安全测试概述

程序员在开发过程中,会有意或无意地埋下一些漏洞,而发现这些安全性漏洞,寻求有效的解决方法则是测试工程师义不容辞的责任。

安全测试主要涉及以下内容:

1、认证与授权

授权:在网站中不同的角色有不同的权限。

认证:一些网页访问需要输入密码进行登录认证。

在认证与授权中要尽可能避免出现漏洞,否则将被不法分子有意地进行利用。

2、Session与Cookie

Session在网络应用中称为“会话控制”,是保存在服务器端的数据或者文件;

cookie是保存在客户端电脑上的文件;

cookie很容易通过某种手段获取到我们的权限以及一些隐私信息;session ID是唯一的标记,一旦别人通过cookie欺骗等手段获取了session ID,可以将其作为协议包发给服务器,从而就拥有了我们的权限。

3、DDOS分布式拒绝服务攻击

分布式拒绝服务攻击(DDOS)指的是借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动攻击,从而成倍地提高拒绝服务攻击的威力。

通常,攻击者盗用别人的账号将DDOS主控程序安装在一个计算机上,代理程序安装在网络上的许多计算机上,在一个设定的时间,主控程序将与大量代理程序进行通讯。代理程序收到指令就发动攻击,从而占用服务器的资源,无法正常向用户提供服务。

任何事物的发展都是有利有弊的,高速广泛连接的网络也不例外。一方面网络给大家带来了便捷,另一方面也为DDOS攻击创造了极为有利的条件。在低速网络时代时,由于技术的限制,黑客占领攻击用的傀儡机时,总是会优先考虑离目标网络距离近的机器。而在如今网络高速发展、广泛连接的信息化时代,数据传输不再是问题,这使得攻击可以从更远的地方或者其他城市发起,从而作为攻击的傀儡机可以分布在更大的范围,选择起来更灵活了。

被DDOS攻击时的现象:

1)被攻击主机上会有大量等待的TCP连接;

2)网络中充斥着大量的无用的数据包,源地址为假;

3)制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯;

4)利用受害主机提供的服务或传输协议上的缺陷,反复高速的发出特定的服务请求,使受害主机无法及时处理所有正常请求;

4、文件上传漏洞

文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器命令的能力。

大部分的网站和应用系统都具备上传功能,例如用户头像上传,图片上传,文档上传,视频上传等。由于实现文件上传的代码没有严格限制用户上传的文件后缀以及文件类型,导致允许攻击者向某个目录上传任意PHP文件,并能够将这些文件传递给PHP解释器,就可以在远程服务器上执行任意PHP脚本。

当系统存在文件上传漏洞时攻击者可以将病毒,木马,其他恶意脚本或者是包含了脚本的图片上传到服务器,这些文件将对攻击者后续攻击提供便利。根据具体漏洞的差异,此处上传的脚本可以是正常后缀的PHP,ASP以及JSP脚本,也可以是篡改后缀后的这几类脚本。

5、XSS跨站攻击

XSS跨站攻击指的是攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

XSS漏洞是目前为止发现的在所有网站超过80%比例的定制Web应用程序中最常见的漏洞。XSS主要攻击的是用户,例如钓鱼网站获取别的用户的Session ID,通过别人的输入来获取关键信息。

XSS是一种攻击技术,它使得加载在用户的Web浏览器上的网站出现攻击者提供的可执行代码,当黑客利用该存在漏洞的网站作为攻击对象时,用户理所当然的成为受害者。

跨站攻击的类型包含持久型跨站、非持久型跨站、DOM跨站,不同的跨站类型,有不同的跨站特点与区别,但又有跨站之间的相互联系。

存储型XSS,持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie等。

反射型XSS,非持久化,需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。

DOM跨站攻击是最隐蔽型的攻击,也就是说输出内容在源码里面看不到,不是直接输出的。

6、SQL注入

通过任何可以输入的地方,向服务器端注入信息,是普遍的攻击方式。

总体来说就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。

不知道设计者的SQL语句,不知道用户名,密码,采用这种暴力破解,准备足够多的账号信息,不停地进行试验,总可以找到用户名,密码。快速破解需要借助于代码,而不是人工主要采用的方式。

7、跨站请求伪造(CSRF)

跨站请求伪造(CSRF)指的是攻击者控制受害者的计算机,强迫受害者的浏览器向一个易受攻击的Web应用程序发送请求,最后达到攻击者所需要的操作行为。恶意请求会带上浏览器的Cookie,受攻击的Web应用信任浏览器的Cookie。

二、安全测试类型详解

1、认证与授权

尽量避免未被授权的页面可以直接访问,应该对每个页面都有一个session变量的判断。如果没有判断只要用户知道URL地址就能进行访问。

测试方法:在不登陆的情况下,使用绝对URL地址对页面进行访问,能否正常访问,绝对URL地址直接通过httpwatch对每个请求进行获取。

2、session与cookie

避免保存敏感信息到cookie文件中,cookie的保存可以提高用户的体验。

作用域:

Set-Cookie:PHPSESSIONID= ;pash=/相对于根目录而言的,如C:\xampp\htdocs就是根目录,agileone保存的信息是在phpwind是能读取到的,相互之间是同样的作用域,两个系统可以交叉读取cookie信息。

解决办法是:不同的应用系统不同的作用域,如将agileone和phpwind两个应用配置在不同的作用域当中:即可修改代码path=/agileone,path=/phpwind.

3、DDOS拒绝服务攻击

(1)分布式的拒绝服务式攻击(攻击服务器的电脑分布在不同地方向服务器发送请求)的两种方式

1)使用肉机

通过设置木马让很多电脑受远程控制,帮忙执行病毒程序,服务器防火墙无法通过封锁IP的方式进行处理,唯一的解决办法就是服务器够强大;

2)形成攻击联盟

很多人联合起来对同一个网站发起攻击,对网站流量形成一定压力,对同一网站造成伤害。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 测试工程师
    +关注

    关注

    6

    文章

    128

    浏览量

    13015
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    硬件工程师面试必会:10个核心考点#硬件设计 #硬件工程师 #电路设计 #电路设计

    硬件工程师
    安泰小课堂
    发布于 :2025年09月23日 18:00:33

    “没什么可测”时,测试工程师可以做什么?

    作为一名软件测试工程师,应该都有过这样的经历:开发人员还在编码中,看板上没有待测试的任务,没有即将发布的版本,也没有回归测试的要求...特别是在实行瀑布模型团队的研发早期,或者敏捷模式下迭代早期阶段
    的头像 发表于 09-12 10:03 430次阅读
    “没什么可测”时,<b class='flag-5'>测试工程师</b>可以做什么?

    测试工程师都在用的Linux命令清单(建议收藏)

    作为一名工程师,熟练掌握Linux命令是基本功中的基本功。无论是日常工作中的系统维护,还是面试时的技术考核,Linux命令都是绕不开的核心技能。本文将从实战角度出发,系统梳理工程师必须掌握
    的头像 发表于 08-08 10:06 496次阅读
    <b class='flag-5'>测试工程师</b>都在用的Linux命令清单(建议收藏)

    一文分享电子工程师年度私藏清单!助你测试效率翻倍!

    对于电子工程师而言,一套趁手的实用工具就如同战士的利刃,不仅能让日常的测试工作事半功倍,更能在关键时刻精准捕捉问题、高效解决难题。下面就为大家推荐一波经过实践检验的电子工程师私藏清单,以及经典功放
    的头像 发表于 07-24 18:38 3621次阅读
    一文分享电子<b class='flag-5'>工程师</b>年度私藏清单!助你<b class='flag-5'>测试</b>效率翻倍!

    做了电子工程师之后,最好拍的视频出现了#硬件设计 #电子DIY #电子工程师

    电子工程师
    安泰小课堂
    发布于 :2025年06月24日 17:45:57

    一个优秀的射频测试工程师需要具备哪些技能?

    一个优秀的射频测试工程师需要具备哪些技能?在无线技术高速发展的今天,射频(RF)测试工程师是确保通信设备性能与用户体验的关键角色。从复杂的调制方案到无处不在的干扰,从功耗优化到标准合规性,工程师需要
    的头像 发表于 05-16 10:08 1506次阅读
    一个优秀的射频<b class='flag-5'>测试工程师</b>需要具备哪些技能?

    问,成为硬件工程师需要几只手?#硬件工程师 #YXC晶振 #扬兴科技 #搞笑

    硬件工程师
    扬兴科技
    发布于 :2025年04月25日 17:15:37

    硬件工程师手册(全套)

    §1.2.1 硬件工程师职责 一个技术领先、运行可靠的硬件平台是公司产品质量的基础,硬件工程师职 责神圣,责任重大。yf-f4-06-cjy 1、硬件工程师应勇于尝试新的先进技术之应用,在产品硬件
    发表于 04-22 15:05

    硬件工程师:回答我!#回答我 #硬件工程师 #YXC晶振 #扬兴科技

    硬件工程师
    扬兴科技
    发布于 :2025年03月25日 18:46:59

    一招拿捏电子工程师#被AI拿捏了 #电子工程师 #电子电工

    电子工程师
    安泰小课堂
    发布于 :2025年03月25日 17:30:51

    如何成为嵌入式开发工程师

    如何成为嵌入式开发工程师? 成为嵌入式开发工程师通常需要掌握一系列技能和知识,并且在实践中不断积累经验。以下是一些基本步骤和建议: 1. 基础教育:- 获取电子工程、计算机科学或相关领域的学位
    发表于 02-19 10:39

    嵌入式工程师常用的开发工具有哪些?

    项目管理和调试。IAR Embedded Workbench 也是广受欢迎的 IDE,具有出色的优化能力和调试工具,能够帮助工程师快速开发出高质量的嵌入式软件。 二、编译器 编译器将高级语言
    发表于 12-20 15:29