• HW-初始准备


    linux应急溯源

    如何查最近新增的文件,你用那些命令
    find / -name 文件名
    ls -alt
    用户列表怎么查
    cat /etc/passwd
    临时目录是哪个文件夹
    /tmp /etc/ssh
    用户登录的时间
    uptime
    如何查看进程
    ps -aux
    如何查端口
    Top netstat -an

    知道的渗透框架有哪些
    Metasploit,Empire,Cobalt Strike。

    CSRF,XSS,XXE有什么区别,及修复方式
    XSS与CSRF区别
    方向不一样
    Xss主要通过劫持用户信息,主动的去通过劫持的用户信息去攻击
    Csrf主要通过伪造请求,将自己的请求伪装成正常的请求,通过用户去访问正常网站
    对象不一样
    Xss主要攻击客户端
    Csrf主要通过伪装去访问服务端
    方法不一样
    Xss不需要登录 直接在页面进行语句构造进行攻击或脚本攻击
    Csrf需要有被伪装攻击用户的登录信息
    XXE
    XXE是XML的外部实体注入攻击,XML中可以通过调用实体来请求本地或者远程内容,和远程文件保护类似,会引发相关安全
    修复方式
    XSS:对字符实体进行转义、使用HTTP Only来禁止JavaScript读取Cookie值、输入时校验、输出???html???。
    CSRF:筛选出需要防范CSRF的页面然后嵌入Token、再次输入密码、检验Referer
    XXE:XML解析库在调用时严格禁止对外部实体的解析
    1.
    如何防止CSRF
    首先XSS漏洞先防护好, 针对重要的服务:比如网站的积分,涉及用户利益的以及重要信息的最好用ajax请求,使用token验证。这样可以防止token被攻击者获取。验证
    referer来源。

    应急响应

    收集信息,收集客户信息和中毒主机信息,包括样本
    判断类型,判断是什么安全事件是ddos还是勒索攻击
    赶紧抑制范围的扩大
    然后深入分析,分析日志,分析进程,启动项分析,方便今后的溯源,清理处置,杀掉进程,删除文件,最后·产出报告

    SQL注入:

    sql注入是指web应用程序对用户输入的数据过滤不严谨,攻击者可以在web应用程序中代码里的查询语句进行传参,进行sql注入攻击。

    XSS攻击:

    SQL注入拼接的是操作数据库的SQL语句。XSS拼接的是网页的HTML代码,一般而言我们是可以拼接出合适的HTML代码去执行恶意的JS语句(总结:XSS就是拼接恶意的HTML)
    盗取Cookie并发送,获取内网IP。
    反射型XSS
    存储型XXS
    DOM型XSS

    文件上传漏洞:

    程序员在对用户文件上传部分的控制不足或者处理缺陷,导致的用户可以越过其本身权限向服务器上上传可执行的动态脚本文件。这里上传的文件可以是木马,病毒,恶意脚本或者WebShell
    造成文件上传漏洞的原因
    1 对于上传文件的后缀名(扩展名)没有做较为严格的限制
    2 对于上传文件的MIMETYPE(用于描述文件的类型的一种表述方法) 没有做检查
    3 权限上没有对于上传的文件目录设置不可执行权限,(尤其是对于shebang类型的文件)
    4 对于web server对于上传文件或者指定目录的行为没有做限制
    ?file=php://filter/read=convert.base64-encode/resource=index.php

    中间人攻击
    中间人攻击是一个(缺乏)相互认证的攻击;由于客户端与服务器之间在SSL握手的过程中缺乏相互认证而造成的漏洞

    防御中间人攻击的方案通常基于一下几种技术

    1.公钥基础建设PKI
    使用PKI相互认证机制,客户端验证服务器,服务器验证客户端;上述两个例子中都是只验证服务器,这样就造成了SSL握手环节的漏洞,而如果使用相互认证的的话,基本可以更强力的相互认证

    2.延迟测试
    使用复杂加密哈希函数进行计算以造成数十秒的延迟;如果双方通常情况下都要花费20秒来计算,并且整个通讯花费了60秒计算才到达对方,这就能表明存在第三方中间人。

    3.使用其他形式的密钥交换形式
    ARP欺骗
    原理

    每台主机都有一个ARP缓存表,缓存表中记录了IP地址与MAC地址的对应关系,而局域网数据传输依靠的是MAC地址。在ARP缓存表机制存在一个缺陷,就是当请求主机收到ARP应答包后,不会去验证自己是否向对方主机发送过ARP请求包,就直接把这个返回包中的IP地址与MAC地址的对应关系保存进ARP缓存表中,如果原有相同IP对应关系,原有的则会被替换。这样攻击者就有了偷听主机传输的数据的可能

    防护

    1.在主机绑定网关MAC与IP地址为静态(默认为动态),命令:arp -s 网关IP 网关MAC

    2.在网关绑定主机MAC与IP地址

    3.使用ARP防火墙

    wireshark简单的过滤规则
    过滤ip:

    过滤源ip地址:ip.src1.1.1.1;,目的ip地址:ip.dst1.1.1.1;

    过滤端口:

    过滤80端口:tcp.port80,源端口:tcp.srcport80,目的端口:tcp.dstport==80

    协议过滤:

    直接输入协议名即可,如http协议http

    http模式过滤:

    过滤get/post包http.request.mothod==“GET/POST”

    CSRF SSRF

    csrf是用户用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;
    在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录网站A成功,可以正常发送请求到网站A;
    用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B(内含恶意代码);
    网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A;
    浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,向网站A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的权限处理该请求,导致来自网站B的恶意代码被执行。
    CSRF攻击的防范措施:
    将cookie设置为HttpOnly
    验证 HTTP Referer 字段;
    (Referer:在 HTTP 头中的一个字段,它记录了该 HTTP 请求的来源地址。)
    在请求地址中添加 token 并验证;
    (Token:服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。)
    在 HTTP 头中自定义属性并验证。

    SSRF
    限制请求的端口只能为Web端口,只允许访问HTTP和HTTPS请求;
    限制不能访问内网IP,防止对内网进行攻击;
    屏蔽或者过滤返回的详细信息;

    XSS、CSRF、SSRF的区别
    不同点:
    XSS:是服务器对用户输入的数据没有进行足够的过滤,导致客户端浏览器在渲染服务器返回的html页面时,出现了预期值之外的脚本语句被执行。
    CSRF:是服务器端没有对用户提交的数据进行随机值校验,且对http请求包内的refer字段校验不严,导致攻击者可以利用用户的Cookie信息伪造用户请求发送至服务器。
    SSRF:是服务器对用户提供的可控URL过于信任,没有对攻击者提供的RUL进行地址限制和足够的检测,导致攻击者可以以此为跳板攻击内网或其他服务器。
    在这里插入图片描述
    在这里插入图片描述
    入侵检测系统(IDS):
    对那些异常的、可能是入侵行为的数据进行检测和报警,告知使用者网络中的实时状况,并提供相应的解决、处理方法;是一种侧重于风险管理的安全产品。

    入侵响应系统(IRS):
    深入网络数据内部,查找它所认识的攻击代码特征,过滤有害数据流,丢弃有害数据包,并进行记载,以便事后分析;考虑应用程序或网路传输中的异常情况,来辅助识别入侵和攻击;应用入侵防御系统的目的在于及时识别攻击程序或有害代码及其克隆和变种,采取预防措施,先期阻止入侵。

    入侵防御系统(IPS):
    对那些被明确判断为攻击行为,会对网络、数据造成危害的恶意行为进行检测和防御,降低或是减免使用者对异常状况的处理资源开销,是一种侧重于风险控制的安全产品。IPS可以看作是IDS+IRS功能结合的衍生品。

    物理层: 将数据转换为可通过物理介质传送的电子信号 相当于邮局中的搬运工人。
    数据链路层: 决定访问网络介质的方式。
    在此层将数据分帧,并处理流控制。本层指定拓扑结构并提供硬件寻址,相当于邮局中的装拆箱工人。
    网络层: 使用权数据路由经过大型网络 相当于邮局中的排序工人。
    传输层: 提供终端到终端的可靠连接 相当于公司中跑邮局的送信职员。
    会话层: 允许用户使用简单易记的名称建立连接 相当于公司中收寄信、写信封与拆信封的秘书。
    表示层: 协商数据交换格式 相当公司中简报老板、替老板写信的助理。
    应用层: 用户的应用程序和网络之间的接口。

    xxe名为外部实体注入,很明显这是个注入漏洞,通过构造恶意内容,可以导致读取任意文件,执行系统命令,探测内网端口,攻击内网网站等一系列问题,想要学习xxe就得先了解什么是xml,xml是一种可标记扩展语言,它可以用来标记数据定义数据类型是一种允许用户对自己的标记语言进行定义的语言语言。xml的简单易于在任何应用程序中读写数据,这使得xml很快,就成为数据交换的唯一公共语言。

  • 相关阅读:
    【CNN-SVM回归预测】基于CNN-SVM实现数据回归预测附matlab代码
    linux 下 rm 为什么要这么写?
    【深蓝学院】手写VIO第8章--相机与IMU时间戳同步--笔记
    最全的推特群推营销秘籍
    Java开发必须掌握的运维知识 (七)-- 性能监控日志收集,数据实时分析存储工具Influxdb实战
    CPU、内存、磁盘性能监控
    如何获取standard cell各端口的作用
    为什么游戏里的都是伪随机,做不出真随机?
    C语音-笔记
    【Linux】线程属性的定义&如何修改线程属性(附图解与代码实现)
  • 原文地址:https://blog.csdn.net/qq_53142368/article/details/125173592