干货丨渗透测试常用方法总结,大神之笔!_数据库渗透测试(渗透测试常用工具汇总)

干货丨渗透测试常用方法总结,大神之笔!_数据库渗透测试一、渗透流程 信息收集 漏洞验证/漏洞攻击 提权,权限维持 日志清理
信息收集
一般先运行端口扫描和漏洞扫描获取可以利用的漏洞。多利用搜索引擎
端口扫描

1、渗透过程

收集消息

漏洞验证/漏洞攻击

提升特权和维持特权

清洁日志

信息收集

通常,首先执行端口和漏洞扫描以检索可利用的漏洞。从搜索引擎中获取更多信息

端口扫描

如果有权限,可以直接使用nmap、masscan等端口扫描工具,或者自己编写py脚本直接获取开放端口,获取服务器banner信息。使用Python 进行端口扫描概述https://thief.one/2018/05/17/1/?hmsr=toutiao.ioutm_medium=toutiao.ioutm_source=toutiao.io Windows 上基于Powershell 的端口扫描脚本。

https://github.com/BornToBeRoot/PowerShell_IPv4PortScanner/tree/master/Scripts

漏洞扫描

使用Polar Bear Scanner、Nessus、awvs等漏洞扫描工具直接扫描目标,可以直接看到存活主机以及主机漏洞状态。

二、漏洞攻击

如果只使用端口扫描,只检测开放端口,得到banner信息后,在漏洞数据库(seebug、ExploitDB)中搜索对应的CVE,检查是否存在该漏洞。安全检查通常旨在发现所有可能的漏洞、评估漏洞的风险并进行修复。如果发生泄露,请仅关注可直接利用的漏洞,例如高风险远程代码执行或敏感信息泄露漏洞。要验证漏洞,可以找到POC 和EXP 及其对应的CVE 编号,在ExploitDB 上查看漏洞利用代码,浏览bug,或者在github 上搜索相关漏洞验证或利用工具即可查看。

2.1 Web应用

您可以直接搜索并执行注入、上传、代码执行、文件包含、跨站脚本等漏洞攻击。您通常可以直接使用AWVS 扫描常见漏洞。

2.1.2 Web 中间件

(1)Tomcat

Tomcat是Apache Jakarta软件组织的一个子项目,是基于SUN的JSWDK(Java Server Web Development Kit)开发的JSP/Servlet规范的标准实现。 JSP 和servlet 规范。

端口号:8080

攻击方法:

默认密码,弱密码,爆破,tomcat5默认有两个角色:tomcat和role1。 tomcat和role1这两个账户的默认密码都是tomcat。弱密码通常存在于5 之前的版本中。

在托管后台部署war后门文件

远程代码执行漏洞

参考:

https://paper.seebug.org/399/

http://www.freebuf.com/column/159200.html

http://liehu.tass.com.cn/archives/836

http://www.mottoin.com/87173.html

(2) Jboss

运行EJB 的J2EE 应用程序服务器。它是一个开源项目,遵循最新的J2EE 规范。自启动以来,JBoss 项目已经从一个EJB 容器发展成为一个基于J2EE 的Web 操作系统,体现了J2EE 规范中的最新技术。

端口:8080

攻击方法:

弱密码爆炸

在行政后台部署战争后门

反序列化

远程代码执行

参考:

JBoss安全问题总结 – 瞌睡龙

http://mobile.www.cnblogs.com/Safe3/archive/2010/01/08/1642371.html

https://www.zybuluo.com/websec007/note/838374

https://blog.csdn.net/u011215939/article/details/79141624

(3)WebLogic

WebLogic是Oracle公司开发的应用服务器,是一种用于开发、集成、部署和管理大规模分布式Web应用程序的Java应用服务器。网络和数据库应用程序。将Java 的动态功能和Java Enterprise 标准的安全性引入到大规模网络应用程序的开发、集成、部署和管理中。

端口:7001、7002

攻击方法:

弱口令、爆炸性口令或弱口令通常为weblogic/Oracle@123或weblogic。

在行政后台部署战争后门

SSRF

反序列化漏洞

weblogic_uac

参考:

https://github.com/vulhub/vulhub/tree/master/weblogic/ssrf

https://blog.gdssecurity.com/labs/2015/3/30/weblogic-ssrf-and-xss-cve-2014-4241-cve-2014-4210-cve-2014-4.html

https://fuping.site/2017/06/05/Weblogic-漏洞-验证/

https://bbs.pediy.com/thread-224954.htm

(4) WebSphere

IBM 的一套典型的电子商务应用程序开发工具和操作环境。

端口:默认端口:908*;第一个应用程序是9080,第二个是控制台。

攻击方法:

控制台登录爆破

许多内网WebSphere 控制台都有弱密码或默认密码,允许您使用admin/admin 或webshpere/webshpere 等密码登录。使用该密码登录控制台后,即可部署war包并获取WEBSHELL。

反序列化

如果你的文件被泄露

参考:

https://loudong.sjtu.edu.cn/?keyword=WebSphereserverity=%E9%AB%98%E5%8D%B1

http://www.fr1sh.com/wooyun_1/bug_detail.php?wybug_id=wooyun-2013-036803

https://gist.github.com/metal0id/bb3e9bab2b7caee90cb7

(5) Glassfish

2.1.3 Web 框架

(1) Struts2

Struts2 是一个优雅且可扩展的框架,用于创建企业级Java Web 应用程序。大量的漏洞也出现了,每次发现一个严重的漏洞,它就会在平台上被清除。

可利用的漏洞

S2-046 CVE-2017-5638 Struts 2.3.5-2.3.31、Struts 2.5-2.5.10

S2-045 CVE-2017-5638 Struts 2.3.5-2.3.31、Struts 2.5-2.5.10

S2-037 CVE-2016-4438 支柱2.3.20-2.3.28.1

S2-032 CVE-2016-3081 支柱2.3.18-2.3.28

S2-020 CVE-2014-0094 支柱2.0.0-2.3.16

S2-019 CVE-2013-4316 Struts 2.0.0-2.3.15.1

S2-016 CVE-2013-2251 Struts 2.0.0-2.3.15

S2-013 CVE-2013-1966 Struts 2.0.0-2.3.14

S2-009 CVE-2011-3923 Struts 2.0.0-2.3.1.1

S2-005 CVE-2010-1870 支柱2.0.0-2.1.8.1

参考:

https://github.com/hktalent/myhktools

https://github.com/Lucifer1993/struts-scan

https://github.com/SecureSkyTechnology/study-struts2-s2-054_055-jackson-cve-2017-7525_cve-2017-15095

(2)Spring 框架

Spring Framework 是在Apache License 2.0 开源许可协议下发布的开源Java/Java EE 全栈应用框架。还有一个移植到.NET平台的版本。 Spring 框架提供了一种简单的开发方法,可以避免大量的属性文件和帮助程序类,这些文件和帮助程序类会使底层代码变得复杂和混乱。

可利用的漏洞

CVE-2010-1622

CVE-2018-1274

CVE-2018-1270

CVE-2018-1273

反序列化

目录遍历

参考

http://www.inbreak.net/archives/377

https://www.secpulse.com/archives/71762.html

http://www.open-open.com/news/view/1225d07

https://xz.aliyun.com/t/2261

https://xz.aliyun.com/t/2252

2.1.4 Web 服务器

IIS:Windows 的WWW 服务器

端口:80

攻击方法:

开启WebDAV的IIS可以直接查看服务器PUT文件

短文件名枚举漏洞

远程代码执行

权限提升漏洞

分析漏洞

参考:

https://masterxsec.github.io/2017/06/07/IIS-write-%E6%BC%8F%E6%B4%9E%E5%88%A9%E7%94%A8/

http://www.freebuf.com/articles/4908.html

https://www.anquanke.com/post/id/85811

阿帕奇

端口:80

攻击方法:

分析漏洞

目录遍历

nginx

端口:80

攻击方法:

分析漏洞

目录遍历

CVE-2016-1247:如果需要获得主机操作权限,攻击者可以用任意文件的软链接替换日志文件,从而提升权限并获得服务器上的root 权限。

参考:

https://www.seebug.org/vuldb/ssvid-92538

光TPD

端口:80

攻击方法:

目录遍历

2.2 常见运维系统

一般归类为与自动化部署、运维监控相关的工具。漏洞可通过搜索引擎、github搜索、ExploitDB搜索、官网安全公告等方式获取。常见内联网应用程序的一个常见问题是弱密码。如果管理员可以登录多个系统,那么这些系统的帐户和密码基本上是相同的。

2.2.1 Gitlab

GitLab 是一个使用Ruby on Rails 开发的开源应用程序,它实现了一个自托管项目存储库,可以通过Web 界面访问公共或私有项目。

可利用的漏洞:

读取任意文件的漏洞

意外的用户令牌泄漏漏洞

命令执行漏洞

参考:

http://blog.knownsec.com/2016/11/gitlab-file-read-vulnerability-cve-2016-9086-and-access-all-user-authentication-token/

http://rinige.com/index.php/archives/577/

2.2.2 Jenkins

Jenkins是一款跨平台的持续集成和交付应用软件,有利于新软件版本的持续稳定交付,提高工作效率。该DevOps 工具还使开发人员可以轻松地将更改集成到项目中并使用各种测试和部署技术。

可利用的漏洞:

远程代码执行漏洞

反序列化漏洞

未授权访问漏洞

登录入口爆表

参考

https://www.cnblogs.com/backlion/p/6813260.html

https://www.anquanke.com/post/id/86018

https://paper.seebug.org/199/

2.2.3 Puppet

Puppet Enterprise 专注于管理基础设施即代码(IAC),这是一种IT 基础设施配置流程,其中代码由系统而不是脚本化流程自动构建、管理和配置。由于它是代码,因此您可以轻松地重复整个过程。 Puppet 促进版本控制、自动化测试和持续交付,使您能够快速响应问题和错误。

可利用的漏洞,很少披露的POC

反序列化

远程命令执行

2.2.4 Ansible

Ansible 是一个用于部署和配置客户端软件的配置和管理工具,支持Unix、Linux 和Windows。它使用JSON 和YAML 而不是IAC,并且不需要安装任何节点代理。它可通过OpenStack 用于本地系统,也可在Amazon EC2 上使用。

可利用的漏洞

远程代码执行

2.2.5 Nagios

Nagios 是一个开源计算机系统和网络监控工具,可让您有效监控Windows、Linux 和Unix 主机的状态以及交换机、路由器和打印机等网络配置。如果系统或服务状态出现异常,会立即通过邮件或短信报警的方式通知网站运维人员,恢复后会定期发送邮件或短信通知。

可利用的漏洞

执行代码

SQLi

参考

http://www.bugku.com/thread-87-1-1.html

http://www.mottoin.com/93936.html

2.2.6 Zabbix

Zabbix是一个功能强大的开源分布式监控系统,允许您通过WEB GUI查看SNMP、JMX和Zabbix Agent提供的数据。

可利用的漏洞(详细信息请参阅ExploitDB):

远程代码执行

SQLi

shell命令注入

身份验证绕过

默认账号和密码,默认密码admin/zabbix,或者guest/empty

参考

https://blog.csdn.net/ytuo1223/article/details/45937981

http://vinc.top/2017/04/18/zabbix%E6%BC%8F%E6%B4%9E%E6%80%BB%E7%BB%93/

http://www.mottoin.com/87570.html

2.2.7 Cacit

Cacti是一套基于PHP、MySQL、SNMP和RRDTool开发的网络流量监控图形分析工具。

可利用的漏洞

执行任意代码

SQLi

登录爆破

默认密码admin/admin

参考:

http://wooyun.jozxing.cc/static/bugs/wooyun-2011-02674.html

2.2.8 Splunk

Splunk Enterprise 监控和分析来自任何来源的机器数据,提供运营智能以优化IT、安全性和业务绩效。 Splunk Enterprise 具有直观的分析、机器学习、打包应用程序和开放API,是一个灵活的平台,可以从重点用例扩展到企业范围的分析骨干。

可利用的漏洞

信息泄露

命令注入

伪造服务器请求

参考

利用数据库搜索

2.3 常见 Web 应用

还有一些常见的电子邮件和CMS 应用程序可以使用已知漏洞进行搜索和利用。

2.3.1 邮件系统

其中之一使用腾讯企业邮箱和阿里巴巴企业邮箱,难以被利用。另一种是政府和企业常用的电子邮件应用程序。

核心邮件

屹耳

35 互联网

涡轮邮件

交换

IBM莲花

2.3.2 CMS 应用

2.4 数据库/缓存/消息服务

2.4.1 MySQL数据库

默认端口:3306

攻击方法:

爆炸:弱密码

身份验证漏洞:CVE-2012-2122

拒绝服务攻击

Phmyadmin通用密码绕过:用户名:‘localhost’@’@”密码可选

特权提升

参考:

https://www.seebug.org/appdir/MySQL

http://www.waitalone.cn/mysql-tiquan-summary.html?replytocom=390

https://xz.aliyun.com/t/1491

2.4.2 MSSQL数据库

默认端口:1433(服务器数据库服务)、1434(Monitor数据库监控)

攻击方法:

漏洞利用:使用弱密码/系统用户

注射

参考:

https://www.anquanke.com/post/id/86011

2.4.3 Oracle数据库

默认端口:1521(数据库端口)、1158(Oracle EMCTL 端口)、8080(Oracle XDB 数据库)、210(Oracle XDB FTP 服务)

攻击方法:

爆炸:弱密码

注入攻击。

漏洞攻击-参考:

https://www.leiphone.com/news/201711/JjzXFp46zEPMvJod.html

2.4.4 PostgreSQL数据库

PostgreSQL 是一个非常完整且免费的软件对象,这使得它可以说是世界上最先进、最强大的免费数据库管理系统。也用到这个数据库,包括kali系统上的msf。 postgresql数据库攻击技术简介。因此,针对数据库的攻击总是SQL注入。

默认端口:5432

攻击方法:

利用:弱密码:postgres postgres

缓冲区溢出:CVE-2014-2669

参考:

http://drops.xmd5.com/static/drops/tips-6449.html

https://www.secpulse.com/archives/69153.html

2.4.5 MongoDB数据库

MongoDB和NoSQL数据库的攻击方法与其他数据库相同》

默认端口:27017

攻击方法:

爆炸:弱密码

未经授权的访问;攻击代码可在github上获取;

参考:

http://www.cnblogs.com/LittleHann/p/6252421.html

http://www.tiejian.org/19157.html

2.4.6 Redis数据库

Redis是一个用C语言编写的开源日志型键/值数据库,支持联网,可以基于内存持久化。尽管该数据库在过去两年中变得非常流行,但许多问题也变得显而易见。尤其是前段时间发现的未经授权的访问。

攻击方法:

爆炸:弱密码

使用未经授权的访问+ ssh 密钥来提升权限。

参考:

http://www.alloyteam.com/2017/07/12910/

2.4.7 SysBase数据库

默认端口:服务端口5000;备份端口:4200

攻击方法:

爆炸:弱密码

命令注入:

参考

2.4.8 DB2 数据库

默认端口:5000

攻击方法:

绕过安全限制:成功执行未经授权的操作(CVE-2015-1922)

参考:

http://23.94.222.93/bug_detail.php?wybug_id=wooyun-2015-0113071

2.5 常见服务/协议

2.5.1 FTP 服务

FTP服务:我们将FTP服务分为两种情况。第一个是使用IIS 的FTP 文件共享或Linux 的默认服务软件进行配置。第二种是使用Serv-U等第三方软件进行配置。 Internet 上也有一些简单的FTP 服务器。默认端口为20(数据端口)和69(TFTP 小文件传输协议)。

攻击方法:

Blast:FTP 爆破工具有很多。我们推荐owasp的Bruter和msf的FTP爆破模块。

匿名访问: 用户名:匿名密码:空白或任何电子邮件

嗅探:FTP使用明文传输技术(但嗅探仅限于局域网,需要欺骗或监听网关)

后门vsftp

远程溢出

跳跃攻击

2.5.2 NFS 服务

NFS(网络文件系统)是FreeBSD 支持的文件系统,允许网络上的计算机通过TCP/IP 网络共享资源。 NFS 应用程序允许本地NFS 客户端应用程序透明地读写远程NFS 服务器上的文件,就像访问本地文件一样。 NFS 目前具有防止导出文件夹滥用的功能,但如果旧系统上的NFS 服务配置不正确,则可能会被恶意攻击者利用。

攻击方式

越权存取

参考

http://www.freebuf.com/articles/network/159468.html

NFS配置不当那些事 – Blood_Zero

2.5.3 Samba服务

Samba是在Linux和Unix系统上实现SMB/CIFS协议的免费软件,由服务器程序和客户端程序组成。 SMB是一种支持局域网内文件和打印机共享的通信协议,在局域网内的不同计算机之间提供文件、打印机和其他资源共享服务。

攻击方式

远程代码执行

密码强度低

未经授权的访问(公共)

参考

http://www.91ri.org/17114.html

2.5.4 SSH 服务

SSH是一种协议,通常使用OpenSSH软件来实现协议应用。 SSH 代表Secure Shell,由IETF Network Workin 开发。

g Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其它网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

端口:22
攻击方法:
爆破
后门
漏洞:28退格漏洞、OpenSSL漏洞
参考
https://cloud.tencent.com/developer/article/1078187

2.5.5 Telnet 服务

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在終端使用者的电脑上使用telnet程序,用它连接到服务器。終端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。

默认端口:21
攻击方法:
爆破
嗅探

2.5.6 Windows 远程连接

默认端口:3389
攻击方法
爆破
Shift粘滞键后门:5次shift后门
利用ms12-020攻击3389端口

2.5.7 VNC服务

VNC(Virtual Network Computing),为一种使用RFB协议的显示屏画面分享及远程操作软件。此软件借由网络,可发送键盘与鼠标的动作及即时的显示屏画面。

默认端口:5900+桌面ID(5901;5902)
攻击方式:
爆破:弱口令
认证口令绕过:
拒绝服务攻击:(CVE-2015-5239)
权限提升:(CVE-2013-6886)

2.5.8 SMTP协议

smtp:邮件协议,在linux中默认开启这个服务,可以向对方发送钓鱼邮件!

默认端口:25(smtp)、465(smtps)
攻击方式:
爆破:弱口令
未授权访问

2.5.9 POP3协议

默认端口:109(POP2)、110(POP3)、995(POP3S)
攻击方式:
爆破;弱口令
未授权访问;

2.5.10 DNS服务

默认端口:53
攻击方式:
区域传输漏洞

2.5.11 IMAP协议

默认端口:143(imap)、993(imaps)
攻击方式:
爆破:弱口令
配置不当

2.5.12 SNMP协议

默认端口:161
攻击方式:
爆破:弱口令

2.5.13 DHCP服务

默认端口:67&68、546(DHCP Failover做双机热备的)
攻击方式:
DHCP劫持;

2.6 云环境

2.6.1 VMware

使用 VMware vCloud 可将现有数据中心内的虚拟基础架构资源池化,并将其作为基于目录的服务交付。通过与云计算基础架构的最佳平台 VMware vSphere 配合使用,VMware vCloud Director 可为客户提供构建安全的私有云,从而改变 IT 部门交付和管理基础架构服务以及用户访问和使用这些服务的方式。一般组织中很多独立安装的 Esxi 形式的私有云,或独立部署的虚拟化系统。

端口(很多):
https://kb.vmware.com/s/article/2115330
https://kb.vmware.com/s/article/2081930
漏洞
主机逃逸
CVE-2017-5638
参考:
https://paper.seebug.org/348/
http://www.freebuf.com/articles/system/141179.html
http://www.mottoin.com/100651.html
http://www.52bug.cn/%E9%BB%91%E5%AE%A2%E6%8A%80%E6%9C%AF/4375.html

https://loudong.sjtu.edu.cn/?keyword=vmware&serverity=%E9%AB%98%E5%8D%B1&page=1
https://www.vmware.com/cn/security/hardening-guides.html

2.6.2 OpenStack

OpenStack是基础设施即服务(IaaS)软件,让任何人都可以自行创建和提供云计算服务。此外,OpenStack也用作创建防火墙内的“私有云”(Private Cloud),提供机构或企业内各部门共享资源。

漏洞,有漏洞但是POC基本没有。检查时候可以参考安全的配置实践。
权限绕过漏洞
信息泄露
代码执行漏洞
参考:
https://loudong.sjtu.edu.cn/?keyword=openstack&serverity=%E9%AB%98%E5%8D%B1
https://docs.openstack.org/liberty/zh_CN/install-guide-obs/environment-security.html
http://www.freebuf.com/news/topnews/107203.html

2.6.3 Docker

Docker是一个开放源代码软件项目,让应用程序布署在软件容器下的工作可以自动化进行,借此在Linux操作系统上,提供一个额外的软件抽象层,以及操作系统层虚拟化的自动管理机制[1]。Docker利用Linux核心中的资源分脱机制,例如cgroups,以及Linux核心名字空间(name space),来创建独立的软件容器(containers)。这可以在单一Linux实体下运作,避免引导一个虚拟机造成的额外负担。Linux核心对名字空间的支持完全隔离了工作环境中应用程序的视野,包括进程树、网络、用户ID与挂载文件系统,而核心的cgroup提供资源隔离,包括CPU、内存、block I/O与网络。从0.9版本起,Dockers在使用抽象虚拟是经由libvirt的LXC与systemd – nspawn提供界面的基础上,开始包括libcontainer函数库做为以自己的方式开始直接使用由Linux核心提供的虚拟化的设施。

安全问题(很少有漏洞的POC,安全检查也是基于最佳实践和官方安全建议进行):
CVE-2015-3630 1.6.0 Docker Libcontainer 安全绕过漏洞
CVE-2015-3627 1.6.1 Libcontainer和Docker Engine 权限许可和访问控制漏洞
CVE-2015-3630 1.6.1 Docker Engine 安全绕过漏洞
CVE-2014-9358 1.3.3 Docker 目录遍历漏洞
CVE-2014-9357 1.3.2 Docker 权限许可和访问控制漏洞
CVE-2014-6408 1.3.1 Docker 权限许可和访问控制漏洞
CVE-2014-5277 1.3.0 Docker和docker-py 代码注入漏洞
内核漏洞(Kernel exploits) 容器是基于内核的虚拟化,主机(host)和主机上的所有容器共享一套内核。如果某个容器的操作造成了内核崩溃,那么反过来整台机器上的容器都会受到影响。
拒绝服务攻击(Denial-of-service attacks) 所有的容器都共享了内核资源,如果一个容器独占了某一个资源(内存、CPU、各种ID),可能会造成其他容器因为资源匮乏无法工作(形成DoS攻击)。
容器突破(Container breakouts) Linux的namespace机制是容器的核心之一,它允许容器内部拥有一个PID=1的进程而在容器外部这个进程号又是不一样的(比如1234)。现在问题在于如果一个PID=1的进程突破了namespace的限制,那么他将会在主机上获得root权限。
有毒镜像(Poisoned images) 主要是考虑到镜像本身的安全性,没太多好说的。
参考:
https://toutiao.io/posts/2y9xx8/preview
http://www.yunweipai.com/archives/21610.html
http://www.91ri.org/15837.html
https://blog.csdn.net/ruidu_doer/article/details/53401523
https://loudong.sjtu.edu.cn/?keyword=docker&serverity=%E9%AB%98%E5%8D%B1
http://dockone.io/article/150
http://www.dockerinfo.net/docker/docker%E5%AE%89%E5%85%A8
https://blog.waterstrong.me/docker-security/

2.7 大数据

2.7.1 Elsaticsearch

Elasticsearch 是一个分布式的搜索和分析引擎,可以用于全文检索、结构化检索和分析,并能将这三者结合起来。Elasticsearch 基于 Lucene 开发,现在是使用最广的开源搜索引擎之一,Wikipedia、Stack Overflow、GitHub 等都基于 Elasticsearch 来构建他们的搜索引擎。

默认端口:9200()、9300()
攻击方法:
未授权访问;
远程命令执行;
文件遍历;
低版本webshell植入;
参考
http://www.freebuf.com/sectool/38025.html
https://www.secpulse.com/archives/5401.html

2.7.2 hadoop

Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据,是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。Hadoop=HDFS(文件系统,数据存储技术相关)+ Mapreduce(数据处理),Hadoop的数据来源可以是任何形式,在处理半结构化和非结构化数据上与关系型数据库相比有更好的性能,具有更灵活的处理能力,不管任何数据形式最终会转化为key/value,key/value是基本数据单元。用函数式变成Mapreduce代替SQL,SQL是查询语句,而Mapreduce则是使用脚本和代码,而对于适用于关系型数据库,习惯SQL的Hadoop有开源工具hive代替。Hadoop就是一个分布式计算的解决方案。

参考:

https://tech.meituan.com/hadoop-security-practice.html
https://zhuanlan.zhihu.com/p/33525241
https://www.anquanke.com/post/id/85343
https://www.cloudera.com/documentation/cdh/5-0-x/CDH5-Security-Guide/cdh5sg_hadoop_security_intro.html

2.7.3 Hive

Hive是Hadoop家族中一款数据仓库产品,Hive最大的特点就是提供了类SQL的语法,封装了底层的MapReduce过程,让有SQL基础的业务人员,也可以直接利用Hadoop进行大数据的操作。

参考:

https://cwiki.apache.org/confluence/display/Hive/Security
https://www.cnblogs.com/yejibigdata/p/6394719.html

2.7.4 Sqoop

Apache Sqoop(SQL-to-Hadoop) 项目旨在协助 RDBMS 与 Hadoop 之间进行高效的大数据交流。用户可以在 Sqoop 的帮助下,轻松地把关系型数据库的数据导入到 Hadoop 与其相关的系统 (如HBase和Hive)中;同时也可以把数据从 Hadoop 系统里抽取并导出到关系型数据库里。除了这些主要的功能外,Sqoop 也提供了一些诸如查看数据库表等实用的小工具。

参考

https://sqoop.apache.org/docs/1.99.7/security.html

2.7.5 HBase

HBase建立在HDFS之上,提供高可靠性、高性能、列存储、可伸缩、实时读写的数据库系统。它介于NoSQL和RDBMS之间,仅能通过行键(row key)和行键序列来检索数据,仅支持单行事务(可通过Hive支持来实现多表联合等复杂操作)。主要用来存储非结构化和半结构化的松散数据。与Hadoop一样,HBase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。

参考:

https://www.cloudera.com/documentation/enterprise/5-6-x/topics/admin_hbase_security.html
http://www.cloudera.com/documentation/cdh/5-1-x/CDH5-Security-Guide/cdh5sg_hbase_security.html

2.7.6 Spark

Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于map reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS。参考:

http://cwiki.apachecn.org/pages/viewpage.action?pageId=2887905

三、提权权限维持

3.1 提权

SecWiki 总结了:

https://github.com/SecWiki/windows-kernel-exploits
https://github.com/SecWiki/linux-kernel-exploits

3.2建立后门/端口转发

参考:

http://www.zerokeeper.com/experience/network-port-forwarding-and-penetration.html
https://1sparrow.com/2018/01/20/%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91%E6%80%BB%E7%BB%93/
http://drops.xmd5.com/static/drops/tools-15000.html

端口转发及代理类工具

LCX:windows下面的端口转发软件。
sockscap:主要针对windows平台的端口转发和代理转发。
proxifier:跨平台的端口转发和代理工具,适用windows,linux, Macos平台,代理转发利器
Rsscoks:*nix平台下的端口转发和代理工具,配合proxychains好用 到不行。
Proxychains:*nix平台下老牌的socks代理工具,一般的系统都会自 带,谁用谁知道。
ssh proxy:通过ssh做端口代理和转发,一般*nix系统都自带。
netcat:socat,hping,在很多情况下可以做端口转发和数据代理转 发。
metasploit:metasploit的后渗透模块中有不少代理模块和端口转发 模块。

在中转服务器上下载端口转发工具(加密压缩):

能连接互联网下载
通过 mstsc 的磁盘加载
通过入口服务器中转
通过远程控制软件上传

3.3 传输文件

3.3.1 文件打包

关于打包

Rar文件打包,压缩d:\\data\\目录下所有2013-01-01后修改的doc文件,100M/包密码为Pass,-x为排除选项

`rar.exe a–r –v100m new.rar –ta20130101000000 –hpPass –n*.doc –x*.exe d:\\data\\`
7z加密,压缩d:\\data下所有文件,密码为Pass,分卷100M/包

`7z.exe a c:\\xx.7z -pPass -mhe d:\\data -v100m`
Linux用 tar 打包文件是可以加密码,要跟openssl结合使用。

`tar -zcvf – pma|openssl des3 -salt -k password | dd of=pma.des3`
使用 tar 对加密文件解压:

`dd if=pma.des3 |openssl des3 -d -k password|tar zxf -`
### 3.4.2 文件传输 几个思路
使用端口转发直接传送数据;
搭建 FTP、HTTP 协议;
上传到云端再下载;

3.4 制作后门/木马程序

一般用Matisploit 的 msfvenom,使用参考:

https://github.com/rapid7/metasploit-framework/wiki/How-to-use-msfvenom
https://www.offensive-security.com/metasploit-unleashed/msfvenom/

SET 也可以生成后门程序,另外也可以关注一下最新的 Office、PDF 的漏洞

===

四、日志清理

在做日志清理前需要了解以下的内容:

攻击和入侵很难完全删除痕迹,没有日志记录本身就是一种入侵特征;
删除或清理入侵系统的本地日志不代表删除了痕迹,在网络设备、安全设备、集中化日志系统上仍然留存记录;
留存的后门本身会有攻击者的信息;
使用的代理或跳板可能会被反向入侵;
在操作前检查是否有管理员登录;
删除上传的工具,使用磁盘覆写的功能删除;

Windows日志类型

web日志:IIS、Apache以及其它web日志
操作日志:3389登录列表、最近访问文件、IE等浏览 器访问日志、文件访问日志
登陆日志:系统应用日志-安全日志等
攻击前和状态还原,尽量保持一致

Linux操作日志

Linux历史操作

`unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG; export HISTFILE=/dev/null;`
SSHD登陆记录 删除~/.ssh/known_hosts中记录
修改文件时间戳 touch –r 原文件要修改文件
删除临时使用文件,尤其是tmp目录
logtamper

===

5 工具和其他

内网使用工具渗透的一些原则
使用适合自己的工具,工具没必要收集太多,够用就行;
能根据实际情况编写适用的工具;
不能确保安全的工具均要在虚拟机中运行(很 多捆绑病毒木马);
做安全检查的话,尽量使用 GitHub 上开源的工具。

工具介绍 个人习惯使用 kali 自带工具,特定 POC 先从 Github 上搜索。推荐一个工具介绍的网站:https://www.kitploit.com/
渗透注意事项

检查内网监控防范系统
谨慎使用ARP软件和大面积扫描软件
使用目标网络中无空闲机器,作为打包对象
使用内网大流量机器作为传输对象,如wsus服务 器、视频会议系统
使用临时机器打包、数据传输,不要使用已控机器,可利用wmi脚本或wmic远程操作 渗透注意事项
禁止使用psexec.exe
打包时避开用户工作时间
控制卷包大小<100M
选择用户常用压缩软件
错峰下载数据
控制传输流量
清除所有操作日志
登录主机前先看看管理员是否在

关于我

笔者本人 17 年就读于一所普通的本科学校,20 年 6 月在三年经验的时候顺利通过校招实习面试进入大厂,现就职于某大厂安全联合实验室。

如何自学黑客&网络安全

黑客零基础入门学习路线&规划

初级黑客
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:282G全网最全的网络安全资料包需要保存下方图片,微信扫码即可前往获取!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

如果你零基础入门,笔者建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习;搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime;·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完;·用Python编写漏洞的exp,然后写一个简单的网络爬虫;·PHP基本语法学习并书写一个简单的博客系统;熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选);·了解Bootstrap的布局或者CSS。

8、超级黑客
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,附上学习路线。

网络安全工程师企业级学习路线

攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

视频配套资料&国内外网安书籍、文档&工具

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

一些笔者自己买的、其他平台白嫖不到的视频教程。

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:282G全网最全的网络安全资料包免费领取!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。

还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

结语

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

特别声明:

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

#以上关于干货丨渗透测试常用方法总结,大神之笔!_数据库渗透测试的相关内容来源网络仅供参考,相关信息请以官方公告为准!

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/93149.html

(0)
CSDN的头像CSDN
上一篇 2024年7月5日
下一篇 2024年7月5日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注