适合安全运维及安全测试人员的内网安全检查和渗透总结

  • 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 后渗透

    3.1 提权

    SecWiki 总结了:

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

    3.2 域攻击

    通常域内渗透的过程

    1. 确定目标系统和应用程序
    2. 识别潜在的漏洞
    3. 利用漏洞获得初始访问
    4. 提升权限
    5. 定位域管理进程或者获取远程系统上的本地身份验证令牌
    6. 通过本地管理员的密码Hash,破解密码,使用mimikatz工具抓取密码验证运行在远程系统上的域名管理进程
    7. 迁移域管理进程
    8. 创建一个域管理员

    假设到这里已经从外网或内网利用漏洞入侵到到一台服务器,并且通过提权获取了主机管理员权限,接下来要做的工作是获取域管理员权限,并找到敏感数据。

    通常会使用到的工具:

    1. Empire
    2. PowerUp
    3. PowerView

    一般熟练使用一种就够用了,以 Empire 为例:

    Empire 和 Metasploit 的使用原理是一样的,都是先设置一个监听,然后去生成一个木马,然后在目标主机运行该木马,我们的监听就会连接上反弹回来的代理。

    参考:

    • https://www.anquanke.com/post/id/87328
    • http://www.4hou.com/technology/4704.html

    域渗透另外一个工具 mimikatz,用于抓 Windows 密码,使用参考:

    • http://www.mottoin.com/98506.html
    • https://zhuanlan.zhihu.com/p/34991269

    3.3 建立后门/端口转发

    参考:

    • 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.4 传输文件

    3.4.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.5 制作后门/木马程序

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

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

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

    4 日志清理

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

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

    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 工具和其他

    1. 内网使用工具渗透的一些原则
    • 使用适合自己的工具,工具没必要收集太多,够用就行;
    • 能根据实际情况编写适用的工具;
    • 不能确保安全的工具均要在虚拟机中运行(很
    • 多捆绑病毒木马);
    • 做安全检查的话,尽量使用 GitHub 上开源的工具。
    1. 工具介绍
    2. 个人习惯使用 kali 自带工具,特定 POC 先从 Github 上搜索。
    3. 推荐一个工具介绍的网站:https://www.kitploit.com/
    4. 渗透注意事项
    • 检查内网监控防范系统
    • 谨慎使用ARP软件和大面积扫描软件
    • 使用目标网络中无空闲机器,作为打包对象
    • 使用内网大流量机器作为传输对象,如wsus服务
    • 器、视频会议系统
    • 使用临时机器打包、数据传输,不要使用已控机器,可利用wmi脚本或wmic远程操作
    • 渗透注意事项
    • 禁止使用psexec.exe
    • 打包时避开用户工作时间
    • 控制卷包大小<100M
    • 选择用户常用压缩软件
    • 错峰下载数据
    • 控制传输流量
    • 清除所有操作日志
    • 登录主机前先看看管理员是否在


    分享到:


    相關文章: