代码之家  ›  专栏  ›  技术社区  ›  Sarahbe

在文件上传过程中拒绝带有嵌入JavaScript代码的PDF文件。(XSS)

  •  0
  • Sarahbe  · 技术社区  · 2 年前

    我有一个应用程序,正在使用 Angular 对于客户端和 .NET core 用于服务器端。 该应用程序允许用户将PDF文件上传到系统,以后可以查看这些文件。如何拒绝嵌入的PDF文件 JavaScript 文件上传期间的代码以防止跨站点脚本(XSS)?

    1 回复  |  直到 2 年前
        1
  •  1
  •   K J    2 年前

    通常无法确定客户端是否有病毒/木马程序或病毒/木马文件要上传。

    大多数脚本化表单可能通常都有这样的内容(一个很好的理由是不要称之为.pdf,而是说.XFA或.XMP而不是dumbler.pdf)

    只有在文件上传后,你才能知道你可以在实验室中运行诊断程序的位置,看看内部脚本是安全的(良性的)还是恶性的。

    除非你提供一个防病毒上传器,充分利用客户端设备在上传文件时分解和分析客户端硬盘驱动器扇区,否则将责任推到导入点可能毫无意义。

    无法区分%PDF-i * 受%PDF-i影响 * 影响所在位置 mper 另一个 n

    一条消息可以是简单的“请在完成时发送此表单”或JS炸弹。

    很少有脚本孩子会愚蠢地留下像这个良性脚本这样简单的脚本,因此简单地寻找/Javascript只会淘汰恶作剧者。

    6 0 obj
    <<
    /JavaScript <<
    /Names [(AScript) <<
    /JS (app.alert\({\r\ncMsg: "Gotcha! Try again!", \r\ncTitle: "Acme Testing Service"\r\n}\);)
    /S /JavaScript
    >>]
    >>
    >>
    endobj
    
    推荐文章