我的安全测试面试_自问自答,不亦乐乎

不想做黑客的安全测试不是优秀的cybercop。怎么才能算是优秀的cybercop呢?那么就就必须学会或懂的黑客惯用一些手法与业内所流行的一些漏洞。


加QQ群:136611782

1、常见的几种攻击手段

CC攻击
XSS攻击
CSRF攻击
SQL注入攻击
TCP全连接攻击
框架重定向攻击
惯性思维逻辑攻击
WEB
Server多连接攻击

2、选择一个谈谈期原理

CSRF攻击 通过跨站点请求伪造盗取他人信息,常见方式有

http://javame.cnblogs.com/login?cas=web-cas&service=http://calhost:8080/test-web

模拟常用URL,通过该链接登陆后跳转自定义网站,进行数据截取。

或者通过框架伪造链接模拟与你登陆相似的网页

http://javame.cnblogs.com/login?user=%27%22%3E%3Ciframe+src%3Dhttp%3A%2F%2Fcalhost:8080%3Etest-web%3E

你在伪造网页登陆,会将本人该账户密码发送本人服务器。

3、谈谈怎么预防此类攻击

1/系统强制屏蔽某些特殊符
2/将一些常用敏感词汇进行转码
3/选择优秀框架
4/对重要会话进行唯一标示规范
5/根据重要业务避免使用GET方式提交请求

4、举一个攻击型案例

《某听书网站系统漏洞,利用抓包拼接方式获取网站资源》
http://www.cnblogs.com/Javame/p/3681401.html

5、安全测试的工具都有哪些

常用工具有:
Appscan、N-Stalker、TamperIESetup
工具只能帮我们扫描漏洞,具体的测试还需要我们来进行,怎么说工具是死的人是活的,工具的思维永远跟不上黑客的思维。

6、怎么避免安全问题

这个世界上没有完美无缺的网站,我们只能尽可能减少缺陷的粒度,至于怎么避免安全问题,建议项目从立项起将安全问题列入总纲。从代码层严格要求编码规范,到项目部署网络层规划。
《华为Java编程军规,每季度代码验收标准》
http://www.cnblogs.com/Javame/p/3513670.html

7、举几个例子

1/网络钓鱼是一个统称,代表攻击者试图欺骗用户提供个人隐私信息,以便身份欺骗。通过框架钓鱼与上述链接注入类似,攻击者注入frame或iframe标签,其中含有类似受攻击Web应用的恶意源(SRC)属性,不小心的用户很可能浏览它,但并不知情的情况下访问并离开原始Web应用系统页面,转而定向到恶意Web网站。随后,攻击者便可以轻易诱惑用户提交含有个人信息的表单,或直接通过要求重新登录来获取他的登录凭证。
通过框架钓鱼可以将注入的伪造页面嵌入在原始Web应用页面中,这样对攻击者非常有帮助,因为他的钓鱼企图会披上更可信赖的外表。


GET /javame/os/wonterAction.do? &OsType=search&flagType=adminFlag‘"><iframe%20src=http://javame.cnblogs.com> HTTP/1.0
Cookie: JSESSIONID1=1542faewE8Cslodwed4325PyPvVOoSHA:-1;
... ...
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)
Host: 192.168.3.65
Connection: Keep-Alive HTTP/1.1 200 OK
Content-Length: 18376 Date: Tue, 25 Aug 2009 02:34:39 GMT
Keep-Alive: timeout=4, max=10000
Connection: Keep-Alive

<html>
<head>… …
<input type="hidden"  name="flagType"  value="adminFlag‘"><iframe src=http://javame.cnblogs.com>" />
......

上面已经提到了解决这类注入问题的根本方法在于对用户输入的数据进行必要的过滤处理,尤其对于准备拼入返回结果HTML中的参数。对于链接注入和通过框架钓鱼这类特定注入行为也不例外,只需要应用代码对这些参数的数据进行合法性检查,并对HTML保留字符进行转义。

2/解密的登录请求
这种缺陷比较好理解,说明应用系统在处理登录业务时,采用了明文方式来传递用户请求,而没有通过类似SSL等方式来加密传输这些敏感数据。任何以明文传给服务器的信息都可能被窃,稍后可被攻击者用来身份欺骗或身份伪装。类似的根据准金融业务系统对信息安全的要求,除用户登录使用的账户信息外,很多数据都有加密传输的必要。


POST /wy/login HTTP/1.0 
Cookie: JSESSIONID=KWIjii1221JIIIW223JIKBIIiiigg!-1187336132
Content-Length: 116
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/xaml+xml, application/vnd.ms-xpsdocument, application/x-ms-xbap, application/x-ms-application, */*
Referer: http://lcalhost:8080/wy/login.jsp
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded 
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)Host: 192.168.180.36:7001
Pragma: no-cache
Connection: Keep-Alive
title=%CE
%B2%C6%D3%CF%B5&BiyId=2&logintype=&username=test&userPassw=test&okey=0

HTTP/1.1 200 OK
Content-Length: 19025 Date: Wed, 02 Sep 2009 06:21:04 GMT
Pragma: No-cache
Server: WebLogic WebLogic Server 8.1 Thu Mar 20 23:06:05 PST 2003 24662
Content-Type: text/html;charset=GBK
Expires: 0
Cache-Control: no-cacheConnection: Close

  对于这类需要避免网络传输层嗅探的敏感业务,应用系统非常有必要对用户提交的敏感数据进行必要的加密,采用SSL这类通用的传输层安全规范能够很好的避免数据遭到截取、串改、转发。同时,应用系统自定义的应用层消息加密也可以达到同样的目的。

时间: 2024-12-23 21:48:26

我的安全测试面试_自问自答,不亦乐乎的相关文章

系统改版自问自答

系统改版,尤其是erp系统.资产管理等后台系统的改版,尤其要慎重,改版优化之前,先要做几个自问自答,帮助自己梳理好设计思路. 首先,为什么要改版 现存系统最大的问题是什么,为什么要改版? 具体可以通过访谈使用者.模拟使用场景.新人系统自学后访谈等方式,提炼各路人马在体验系统使用之后遇到的问题. 举个例子,假设你得到的原因有如下几个: 使用者人员流动大 严谨的专业词汇(toB产品的特性) 功能叠加无整体性 功能入口不明确 流程逻辑不易理解 缺乏一致性. 怎么改 根据系统改版原因,制定设计目标 由业

[python]自问自答:python -m参数? (转)

python -m xxx.py 作用是:把xxx.py文件当做模块启动但是我一直不明白当做模块启动到底有什么用.python xxx.py和python -m xxx.py有什么区别! 自问自答: python xxx.py python -m xxx.py 这是两种加载py文件的方式:1叫做直接运行2相当于import,叫做当做模块来启动 不同的加载py文件的方式,主要是影响——sys.path 这个属性.sys.path 就相当于liunx中的PATH. 下面来看一下sys.path >>

自问自答之VR遐想

先让我组织一下语言,作为表达能力超弱的战五渣来讲,归纳总结什么的最要命了. 我可以给你分析个1到N条出来,但是一般来讲没什么顺序,想到什么就说什么.而且我属于线性思维,有一个引子就可以按着话头一步步发散,但是特别容易舍本逐末.就是说,我能想到一个东西的用法,如果沿着该物品的思维线联想,可以想到其生产地.原料等等.但是,我为何会想到它呢?我可能就忘了我的初衷.比如现在就跑题了~ 为何要取名叫自问自答呢?这是因为我要先有个任务,然后才有完成任务的动力及目标.如果只是自由表述,那我能扯到外太空去.当然

自问自答-hadoop在安全模式下究竟干了什么见不得人的事

本来想自己从网上搜集整理的,但是发现吴超写的刚刚好,不多不少,所以直接转载(图片失效了,用自己的图片) http://www.superwu.cn/2013/08/23/548/ 在hadoop集群的时候,集群的运行会进入到安全模式(safeMode)下.在安全模式下运行一段时间后,自动退出. 那么,系统在安全模式下干什么了? 当集群启动的时候,会首先进入到安全模式.系统在安全模式下,会检查数据块的完整性.假设我们设置的副本数(即参数dfs.replication)是5,那么在dataNode上

【转】移动互联网测试面试之我的要求真的不高

好吧,我已经忍了很久了.我在行业中什么脾气大家很多人也知道了,所以我是忍不住的.今天借着林应的一条微博我也爆发以下吧.如果不了解我风格的可以搜索“陈晔 测试”或者购买<大话移动app测试——Android与iOS应用测试指南>(清华大学出版社)清洗三观之后再做测试,嗯. 支付宝也不是一家小公司了,首先我是上海无线业务团队负责测试技术,现在很缺人,大家有兴趣的也可以投简历.我认为我很尊重每个来面试的同学,只要来过的同学我都会耐心和他不足,但是也请你们尊重以下我好么?我真的要求很高么?大家请看我下

『TensorFlow』测试项目_对评论分类

数据介绍 neg.txt:5331条负面电影评论 pos.txt:5331条正面电影评论 函数包 自然语言工具库 Natural Language Toolkit 下载nltk相关数据: import nltk nltk.download() 测试安装是否成功: from nltk.corpus import brown print(brown.words()) 常用的函数有两个: from nltk.tokenize import word_tokenize """ 'I'

百度资深工程师 全方位讲解测试面试

原文配套视频资源获取链接:点击获取 原文配套源码资源获取链接:点击获取 第1章 课程介绍 本章对本门课做详细介绍,说明本课围绕测试人员面试展开,从语言基础.高级编程.web自动化测试.接口自动化测试.性能测试到mysql.Linux全部包含在内,让你的面试技术无死角.最后对测试项目和测试人员的价值及职业规划等角度进行展开讲解.... 1-1 整体介绍试看 第2章 一线互联网公司的面试流程和技巧 本章对岗位JD分析,介绍测试工程师的技能树,三面不同的考察重点以及自我介绍,让大家对测试工程师的定位更

测试面试常见面试题汇总一

软件的生命周期(prdctrm) 计划阶段(planning)-〉需求分析(requirement)-〉设计阶段(design)-〉编码(coding)->测试(testing)->运行与维护(running maintrnacne) 测试用例 用例编号  测试项目  测试标题  重要级别  预置条件  输入数据  执行步骤  预期结果 1.问:你在测试中发现了一个bug,但是开发经理认为这不是一个bug,你应该怎样解决? 首先,将问题提交到缺陷管理库里面进行备案. 然后,要获取判断的依据和标

测试面试之如何设计登录页面(二)

在测试的岗位上差不多已经有了一年,最近有过一次面试遇到了这个登录面试的面试题(这是我第二次遇到.so 我就像好好的把这个问题弄通)设计用例如果弄懂了后其他的测试用例的测试多少在一定的程度上是互通的.看了其他的博文我对比了我两次的面试的不足和进步,最大的进步应该就是在测试之前一定要了解需求(对于需求真的是每个字眼都要扣清楚,一次的项目有一个圆盘收起的测试,产品的原型上描述的是点击后圆盘旋转收起,那时候我才刚接触测试,测试过程中检查圆盘收起就觉得是通过了,但后面的我的师傅检查后问我点击后你知道是要立