问题标签 [taint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - Inline::Python 的不安全依赖
Inline::Python
在模式下运行时,什么可以解释此编译时错误消息-T
?
在 /usr/local/lib/perl/5.14.2/Inline/Python.pm 第 193 行使用 -T 开关运行时打开的不安全依赖项。
第 193 行是Inline::Python
opens的地方$o->{API}{location}
,我认为它是“内联目录”。
当然,我已经使用了所需的选项:
我已经确保它/var/myapp/inline
里面的所有东西都是每个人都可以写的,显然包括 root 和应用程序setuid
在运行时的用户。
相同的脚本在我的计算机上运行没有问题,无论我是否以 root 身份启动它,运行Inline
0.50 Inline::Python
0.43,但是当我尝试在使用相同版本的服务器上运行它时出现此错误,Inline::Python
或者版本 0.49 或 0.55 Inline
.
perl - 使用 TAINT 作为应用程序私有 Perl 的默认安装 Perl
我最近使用 Perlbrew 转换了一个应用程序以使用它自己的 Perl 版本,而不是系统 Perl,我再也不会回到使用系统 Perl 了!
我即将启动一个全新的应用程序,其中所有脚本都将在 TAINT 开启的情况下运行。就像我以前的应用程序一样,新应用程序的库将拒绝在未打开 TAINT 的情况下运行。
我的问题是,我可以安装或修改我自己的私有 Perl,使其默认始终以 TAINT 模式运行吗?
编辑:对不起——我还应该提到我想#!/usr/bin/env perl
在我的脚本中使用 shebang 成语,所以定义一个 shell 别名不是一个解决方案。
perl - 如何强制 perl 变量始终被污染?
我正在寻找一个 100% 可靠的解决方案,不依赖于输入或环境或任何东西 - 我只想 100% 确定地使标量变量受到污染:-)
canvas - 带有传单地图的 Html2Canvas - 不渲染画布
首先感谢您的帮助。我正在使用 html2canvas 获取我的应用程序网络的图像并在社交网络中分享。在应用程序中有一个带有画布层的传单地图,但结果图像不完整。我L_PREFER_CANVAS = true;
在传单地图中放置了强制画布的选项。我也使用了传单图像插件,但它只返回底图,我也需要图例。
非常感谢。
在js中
日志
perl - 未修剪分支中的常量污染
Perl 的明显行为是根据受污染的条件对分支修剪后剩余的分支中的常量进行污染。这有记录吗?
这输出1
:
看起来常量0
被污染了,因为退出后的所有内容(在原始问题中是返回)都在一个分支中,该分支在基于污染条件发生分支修剪后仍然存在。这恰好是 Perl 污点模式的一个非常漂亮的特性,但我在任何地方都找不到它的文档。未设置时$ENV{T}
或条件是动态访问时$ENV{T}
,常量不会受到污染。
顺便说一句,我目前对相关隐含的实际软件开发问题的最佳答案是,我如何在开发时关闭一段 taint-mode perl 源代码而不污染我的常量,是,将常量设置为常量而不是受污染的环境变量,如下所示:
regex - 通过 Perl 模块子例程传递 Perl Untaint 变量
当在 Perl 中清除变量时,是否必须在本地对 Perl (.pl) 文件进行所有清除,或者是否可以通过 Perl 模块 (.pm) 将其传递到清除?
例如,untainting 可能看起来像这样:
(显然,将任何输入内容全部匹配是一种不好的做法,这只是一个示例)
我想知道是否可以通过 .pm 传递它,因为我想在多个 .pl 文件中执行相同的正则表达式。
其中“myUntaint”是 .pm “myModule”中包含我的正则表达式的子例程。
android - 测试 APK 时出现异常错误的基于烟灰的 flowdroid
我正在尝试基于污点分析在 android 应用程序中测试广播接收器组件。但是,当我使用 frowdroid 测试相关应用程序时,它显示:
所有 jar 文件都使用来自主页的最新夜间版本,但我真的不知道这种问题,因为我也检查了源代码,并且该getResult()
方法没有任何问题。有人可以帮忙吗?
perl - 是否可以将 Perl 的 Marpa 解析器用于公共网络服务器?
Perl 的Marpa解析器的文档包含以下有关污染数据的部分:
Marpa::R2 的存在是为了允许其输入以灵活而强大的方式改变执行。Marpa 不应与不受信任的输入一起使用。在 Perl 的污点模式下,将 Marpa 的 SLIF 接口与受污点的语法、受污点的输入字符串或受污点的标记值一起使用是一个致命错误。
我不确定,如果我了解此限制的后果。我明白,语法一定不能被污染。但我不明白输入一定不能被污染。对我来说,验证输入是解析器的任务。对我来说,解析器必须信任它的输入听起来不合理。
真的是这样吗?用 Marpa 实现任何一种公共网络服务是不可能的吗?
我问这个是因为其中一个参考用例是Marpa HTML 解析器,在我看来,使用 HTML 解析器是矛盾的,尽管大约 99.99% 的 HTML 可能被污染,但它不能用于受污染的数据。
任何人都可以解释这个矛盾吗?
c - 内核模块引发警告并污染内核
我只是在编写一个 Linux 内核模块并收到一条警告消息,表明我的内核已被污染:
该消息只出现一次,我的模块正在正常工作,我没有收到任何 Oops 消息或内核 Panic 或类似消息。
我阅读了几个问题、答案和教程(此处、此处或此处),但基本上我发现的只是当前运行的内核不受社区(不再)支持并且无法被社区调试。对我来说,这很明显,因为我的内核模块已安装并且他们没有它的来源。
所以对我来说,这条警告信息似乎没有什么危险,对吗?我已经尝试了几个小时来查找错误,但我没有找到。那么消息是否只是因为我正在使用我的内核模块而出现?
编辑:我不知道这是否重要,但我正在运行 Linux 内核 3.16.0-4-586