飘云阁安全论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

查看: 148|回复: 0

[思路] [攻击方法]欺骗攻击_内容欺骗:校验和欺骗

[复制链接]
  • TA的每日心情
    开心
    2019-3-15 11:00
  • 签到天数: 262 天

    [LV.8]以坛为家I

    发表于 2021-1-11 17:32:34 | 显示全部楼层 |阅读模式
    简述
    知己知彼,方能百战百胜。 -《孙子兵法》
    备注:会对内容进行不定时更新
    更新日期:2021年1月10日



    引申知识
    何为欺骗攻击
    • 英文:Engage in Deceptive Interactions
    • 欺骗就像犯罪本身一样古老,骗子们使用狡诈的方法来欺骗人们,以使自己获得非法利益。在现实世界中,这种行为长期以来一直是犯罪活动的主流,而现在已经深入到了虚拟世界。
    • 欺骗攻击是描述一种行为类型的广义术语,是指网络罪犯试图伪装成可信任的用户或设备,从而欺骗您做一些对攻击者有利、对受害者不利的事情
    • 此类别中的攻击模式着眼于与目标的恶意交互,试图欺骗目标,使目标相信它是在与其他委托人互动,从而根据目标与其他委托人之间存在的信任程度采取行动。
    • 这些类型的攻击假设某些内容或功能与身份相关联,并且由于这种相关联,该内容/功能被目标信任。
    • 这些类型的攻击通常以 "欺骗 "一词来识别,它们依赖于对内容和/或身份的伪造,从而使目标会错误地信任内容的合法性。
    • 例如,攻击者可能修改双方之间的金融交易,使参与者保持不变,但交易金额增加。如果收件人无法检测到变化,他们可能会错误地认为修改后的消息来源于原始发送者。
    • 这些类型的攻击可能涉及对手从头开始制作内容,或捕获和修改合法内容。

    何为内容欺骗攻击
    • 英文:Content Spoofing
    • 攻击者修改内容以使其包含原始内容生产者想要的内容以外的内容,同时保持内容的外观来源不变。
    • 内容欺骗一词最常用于描述由目标托管的网页的修改,以显示对手的内容而不是所有者的内容。 但是,可以欺骗任何内容,包括电子邮件消息,文件传输的内容或其他网络通信协议的内容。
    • 内容可以在源处进行修改(例如,修改网页的源文件)或在传输过程中(例如,在发送方和接收方之间截取和修改消息)。
    • 通常,对手会试图隐藏内容已被修改的事实,但是在某些情况下,例如网站被污损,这是不必要的。 内容欺骗可能导致恶意软件暴露,财务欺诈(如果内容控制财务交易),侵犯隐私和其他不良后果。




    正文内容
    何为校验和
    • 检验和(checksum),在数据处理和数据通信领域中,用于校验目的地一组数据项的和,它通常是以十六进制为数制表示的形式。
    • 如果校验和的数值超过十六进制的FF,也就是255. 就要求其补码作为校验和。通常用来在通信中,尤其是远距离通信中保证数据的完整性和准确性。
    • 这些数据项可以是数字或在计算检验的过程中看作数字的其它字符串。校验和(checksum)是指传输位数的累加,当传输结束时,接收者可以根据这个数值判断是否接到了所有的数据。如果数值匹配,那么说明传送已经完成。
    • TCP和UDP传输层都提供了一个校验和与验证总数是否匹配的服务功能。

    何为校验和欺骗攻击
    • 英文:Checksum Spoofing
    • 攻击者伪造了一个校验和,目的是使有效攻击负载看起来像是一个正常的校验和。 校验和通常用于验证消息的完整性,它们由基于它们所保护的消息内容的一些值所组成。
    • 哈希码是一种常见的校验和计算机制。 发送者和接收者都能够基于消息的内容计算校验和。 如果邮件内容在发送方和接收方之间更改,则发送方和接收方将计算不同的校验码。 由于发送者的校验和值与消息一起发送,因此接收者会知道发生了修改。 在校验和伪造攻击中,对手会修改邮件正文,然后修改相应的校验和,以便收件人的校验和计算将与邮件中的校验和(由攻击者创建)匹配, 这将阻止收件人意识到所接受到的内容发生了更改。

    攻击危害评级
    中危

    前提条件
    • 攻击者必须能够拦截发信人的信息(不让收信人收到),修改信息,并将修改后的信息发送给收信人。
    • 发送者和接收者必须使用一个校验和来保护其信息的完整性,并以对手能够拦截和修改信息的方式传输这个校验和。
    • 攻击者需指定校验码的计算方法,使用只有发送者和接收者才知道的密钥的加密校验和,将能阻止这种攻击。

    资源需求
    攻击者需有一个可以拦截和修改发送者和接收者之间消息的工具。
    示例
    [AppleScript] 纯文本查看 复制代码
    Plaintext: Place 10 orders.
    Hash: T0mUNdEQh13IO9oTcaP4FYDX6pU=

    利用成因
    未采用一个好的验证方法,导致可被攻击者伪造。
    简述
    因无验证机制或错误地验证信息的完整性校验和,这将导致使软件无法检测数据是否在传输过程中被修改或损坏。
    扩展知识
    使用前对校验和进行不正确的验证会长生不必要的风险,但可以轻松地降低此风险。 规范用于计算校验码的算法,之后,只需执行计算并验证计算出的校验和与接收到的校验和是否匹配即可,但对计算出的校验码和收到的校验和的未进行一个有效的验证可能导致更大的危害。
    被利用的可能性

    示例
    代码语言:C
    [C] 纯文本查看 复制代码
    sd = socket(AF_INET, SOCK_DGRAM, 0); serv.sin_family = AF_INET;
    serv.sin_addr.s_addr = htonl(INADDR_ANY);
    servr.sin_port = htons(1008);
    bind(sd, (struct sockaddr *) & serv, sizeof(serv));
    while (1) {
     
    memset(msg, 0x0, MAX_MSG);
    clilen = sizeof(cli);
    if (inet_ntoa(cli.sin_addr)==...) n = recvfrom(sd, msg, MAX_MSG, 0, (struct sockaddr *) & cli, &clilen);
    }

    代码语言:Java
    [Java] 纯文本查看 复制代码
    while(true) {
    DatagramPacket packet = new DatagramPacket(data,data.length,IPAddress, port);
    socket.send(sendPacket);
    }

    缓解措施
    阶段:实施
    在解析和使用消息之前,请确保已根据协议规范正确检查消息中的校验和。

    参考资料
    • 《校验和百科》
    • 《卡巴斯基资源中心》
    • 《CAPEC》
    • 《CWE》
    • 《Distributed Systems Security: Issues, Processes and Solutions》

    您需要登录后才可以回帖 登录 | 快速注册

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|飘云阁安全论坛 ( 粤ICP备15107817号-2 )|扫码赞助

    Powered by Discuz! X3.3© 2001-2017 Comsenz Inc.

      
    快速回复 返回顶部 返回列表