• 《研究的艺术》 Ⅲ

    第三部分 提出观点并加以支持 Making a Claim and Supporting it之前的部分我们深入了探讨了为什么研究的问题是有价值的,为什么以及如何在写作的过程中不断地去问 “so what”。这一个部分,我们将会更关心一个新的问题,”Why should I believe that?”。 提出好的论证 Making Good Arguments写作是一种假想的对话,使得研究...
  • 对开源项目的关键性评分

    在现代世界中,复杂的系统和系统系统是社会和企业运作不可或缺的一部分,能够理解和管理这些系统和组件可能给它们支持的使命带来的风险变得越来越重要。然而,在资源有限的世界里,不可能对所有资产都应用平等的保护。 关键性分析可帮助行业根据资产对运营和安全的重要性评估并识别关键资产,进而确定维护活动的优先级,这种方法有助于识别对维持运营和降低安全风险至关重要的关键资产。通过将维护工作集中在这些关键组件上...
  • CVE-2010-3333 漏洞研究

    Microsoft Office 是微软发布的非常流行的办公软件套件。CVE-2010-3333(微软编号:MS10-087)是 MicrosoftOffice XP SP3、Office 2003 SP3、Office 2007 SP2、Office 2010,MacOffice 2004 和 Office 2008,MacOffice 2011 和 Mac 的 Open XML 文件格式转换器中的栈溢出漏洞。主要是在处理 RTF 中的 pFragments 属性时存在栈溢出,导致攻击者可以借助特制的 RTF 数据执行任意代码,因此该漏洞又名“RTF栈缓冲区溢出漏洞”

    影响范围:
    Microsoft Office XP SP3, Office 2003 SP3, Office 2007 SP2, Office 2010, Office 2004 and 2008 for
    Mac, Office for Mac 2011

  • 《研究的艺术》 Ⅱ

    第二部分 提问题,找答案当从头开始进行研究计划,但还没有清楚的方向,甚至缺少一个确定的题目时,我们很可能会感到束手无策,除非有一个规划来引导整个研究计划。这样一个规划的最初四个步骤大概是 找到一个题目,而这个题目要具体到能够包含足够多的相关信息。比如说,不是“科学写作的历史”,而是“作为现代科学论文写作先驱的皇家学会会议论文集中的论文(1675-1750)” 提出与改题目相关的问题,直到发...
  • 《研究的艺术》 Ⅰ

    《研究的艺术》概要对于研究新手而言,没有任何工作可以像学习做研究一样,能够帮助一个人真正理解收集到的资料或文献。只有亲身经历过研究的不确定性以及凌乱的过程,才能让一个人彻底且深思熟虑地评价所读的文章或资料。撰写自己的研究论文将会帮助自己了解在教科书上读到和专家告知大众的内容背后的工作。研究让人直接体验新知识是如何依靠问什么问题和不问什么问题而产生,呈现研究的标准格式如何形成研究者所提的问题与...
  • CVE-2010-2883 漏洞研究

    CVE-2010-2883 是 Adobe Reader 和 Acrobat 中的 CoolType.dll 库在解析字体文件 SING 表中的 uniqueName 项时存在的栈溢出漏洞,用户受骗打开了特制的 PDF 文件就有可能导致任意代码执行。这种”打开 PDF 即刻中招”的效果堪称”简单暴力”的典范,也使其作为漏洞而言非常经典

    影响范围:
    Adobe Reader 8.2.4 - 9.3.4

  • RE:从0开始阅读Flask源码 Ⅳ

    程序的本质就是指令+上下文。

    作为一个 Web Application ,Flask 也必然有着自己的上下文。例如视图函数需要知道包括请求的方法,路径,参数等请求信息的上下文才能够正常的工作。如果你有过其它语言的编程经验,就会很容易想到通过在调用这些函数时在参数中传递相关的数据或这些数据的指针来为函数提供这些必要的上下文信息。如果这门语言支持 OOP ,那么这些请求相关的信息还可以被封装到请求的抽象类中。事实上,确实有不少框架是这样做的,例如 sanic 。但这样设计上下文的话,视图函数应该会长成这样

    1
    2
    3
    4
    # demo.py
    @app.route(path)
    def view_function(request):
    ...

    也就是说,视图函数应该有 request 这么一个参数才对,但从 Flask Demo 中我们并没有发现这样一个参数。显然,Flask 采用了另外一种不同的实现方式。

13456710