问题标签 [code-injection]
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.
templates - 如何防止 Coldfusion 将 cfform.js 注入 head 部分?
将 HTML 模板传递给 Coldfusion。模板的 head 标签具有附加属性:
问题在于,当基于此模板生成输出时,Coldfusion 会将其脚本注入到 head 标签内:
这会导致profile="http://abc.com">
出现在页面顶部并阻止页面验证。
代码注入仅在有表单标签时发生。如果 head 标签没有任何属性,则不会发生错误位置注入。该属性的存在是项目要求,不能省略。
是否可以防止 Coldfusion 注入脚本?
c# - 在“任何 CPU”.NET 程序集上强制 x86 CLR
在 .NET 中,“平台目标:任何 CPU”编译器选项允许 .NET 程序集在 x64 机器上以 64 位运行,在 x86 机器上以 32 位运行。也可以使用“平台目标:x86”编译器选项强制程序集在 x64 机器上作为 x86 运行。
是否可以运行带有“任何 CPU”标志的程序集,但确定它应该在 x86 还是 x64 CLR 中运行?通常这个决定是由 CLR/OS 加载器(据我了解)根据底层系统的位数做出的。
我正在尝试编写一个 C# .NET 应用程序,它可以与其他正在运行的进程进行交互(读取:将代码注入)。x64 进程只能注入到其他 x64 进程中,x86 也是如此。理想情况下,我想利用 JIT 编译和Any CPU选项来允许使用单个应用程序注入 x64 或 x86 进程(在 x64 机器上)。
这个想法是应用程序将被编译为Any CPU。在 x64 机器上,它将作为 x64 运行。如果目标进程是 x86,它应该重新启动自身,强制 CLR 将其作为 x86 运行。这可能吗?
mysql - 如何在这个 PHP 和 MySQL 代码中演示 SQL 注入?
我想首先指出,这是对我自己的数据库的教育尝试,以更好地理解 MySQL 注入以保护我自己的代码。
我需要制定几个示例来说明如何针对以下代码构建 MySQL 注入。这是一个基本的用户登录系统,我接受用户名和密码而没有任何转义
MySQL 查询然后尝试在我的名为 users 的表中查找输入的用户名和密码,如下所示:
这是未转义的输入,我正在尝试使用 MySQL 注入来:
- 绕过密码知道合法用户的用户名(我的用户表中的一个用户是测试人员),并且
- 将完全删除用户表的注入。
我已经尝试了来自Wikipedia的几个 MySQL 注入示例,但我猜{}
我的查询中的内容阻止了注入,所以我希望得到对此有信心的人的一些帮助,并感谢大家。
spring - 使用 Spring 注入 Log4J 记录器
我有一个带有以下 web.xml 的 spring 2.5 webapp
我宣布了这个豆子
在 services-context.xml 中(这是一个 blazeds/spring 项目)。
我以这种方式将它注入到 UserDAO bean 中:
这是 log4j.xml 配置文件:
在我的课堂上,我有这个:
我希望登录类 UserDAO 会登录到 FILE appender,但它没有。该文件已创建但为空。ROOT appender 工作正常。我究竟做错了什么?
ruby - 通过注入进行条件汇总
如何获取项目的索引:
我需要总结除第 i 个元素之外的所有内容。
javascript - 拒绝执行 JavaScript 脚本。在请求中找到的脚本源代码
在 WebKit 中,我的 JavaScript 出现以下错误:
拒绝执行 JavaScript 脚本。在请求中找到的脚本源代码。
该代码用于 JavaScript 微调器,请参阅ASCII Art。
以前的代码可以正常工作,并且在 Camino 和 Firefox 中仍然可以正常工作。该错误似乎仅在通过 POST 保存页面然后通过 GET 检索时引发。它发生在 Chrome/Mac 和 Safari/Mac 中。
任何人都知道这意味着什么,以及如何解决这个问题?
objective-c - 在系统范围内自动隐藏 OS X 菜单栏
我希望编写一个实用程序来自动隐藏菜单栏,就像停靠栏一样。这将复制仅适用于 OS X 10.4 的应用程序“Menufela”,但适用于 Snow Leopard。
此代码自动隐藏菜单栏(和停靠),但仅在应用程序是最前面的窗口时。无论打开什么应用程序,我将如何在整个系统范围内应用此行为?
我唯一能想到的是一个 InputManager,但我以前没有写过,因此我不确定这是否是正确的方法。
此外,从 Leopard/Snow Leopard 看来 InputManagers 是有限的——来自这个 SO question:
它不会在 root 或 whell 拥有的进程中运行它们,也不会在已修改其 uid 的进程中运行它们。最重要的是,10.5 不会将输入管理器加载到 64 位进程中,并且表明即使使用 32 位也是不支持的,并且将在未来的版本中删除。
我不担心“将在未来的版本中删除”(它只需要在 Snow Leopard 上工作),我不认为 root 拥有的进程是一个问题(所有 GUI 应用程序都应该作为当前的),但可能必须将代码注入到许多 64 位应用程序(Finder/Safari/etc)中
(我最初在 SuperUser 上问过这个问题,但由于似乎没有现成的实用程序可以实现这一点,因此它与 StackOverflow 更相关)
language-agnostic - 如果我只清理 GET 和 POST 数据,我会不会被注入?
我只是在考虑清理数据以防止注入攻击的最佳方法。有些人喜欢在输出之前立即清理,或者在插入数据库之前立即清理......但我看到的问题是双重的:(1)如果你错过了一个参数/变量怎么办?(2) 如果您过度消毒怎么办?并不是说它会损害输出,但是对您已经知道是安全的东西进行消毒没有多大意义。
例如,在 PHP 中,而不是使用$_GET
,$_POST
我不能用类似的东西来包装它们:
或者这还不够吗?恶意代码还能潜入何处?
阅读下面的答案后,我意识到这个问题有点愚蠢。这取决于您是插入数据库还是输出 HTML。在这种情况下,也许最好在使用前进行。没关系,包装输出方法也很容易......
hook - 使用 LD_PRELOAD 方法注入 printf 的问题
我在我的一个项目中破解了 glibc 的 printf() 并遇到了一些问题。你能提供一些线索吗?我关心的一个问题是为什么同样的 malloc/free 解决方案可以完美运行!
如附件所示,“PrintfHank.c”包含我自己的 printf() 解决方案,它将在标准库之前预加载;而“main.c”只是使用 printf() 输出一个句子。编辑两个文件后,我发出以下命令:
- 编译 main.c gcc –Wall –o main main.c
- 创建我自己的库 gcc –Wall –fPIC –shared –o PrintfHank.so PrintfHank.c –ldl
- 测试新库 LD_PRELOAD=”$mypath/PrintfHank.so” $mypath/main
但是我在控制台中收到了“hello world”而不是“within my own printf”。破解 malloc/free 函数时,没关系。
我以“root”身份登录系统并使用 2.6.23.1-42.fc8-i686。任何意见将不胜感激!!
主程序
PrintfHank.c
html - 我们html网站中的神秘网址
我们的静态 html 网站http://www.iffort.com的主页正在从一个神秘的网站 rawalrohi.com 传输数据。您可以通过访问 iffort.com 并注意那里的页脚来检查这一点。它说从 rawalrohi.com 传输数据。
从我们这边,我们做了以下事情来纠正这个问题
a.) 分析所有页面的源代码。我们检查了代码,发现所有页面中都插入了一个脚本 src= http://rawalrohi.com/images/ART.php 。我们从网站的所有“html”页面中删除了这个脚本
b.)接下来我们与托管公司进行了交谈,他们说他们可以为我们提供网站的备份。我们有备份,但尚未使用它来恢复站点。
c.)最后,我们更改了 FTP 密码,因为我们被告知有人可能破解了我们的 FTP 密码。
尽管这样做,主页仍然显示从 rawalrohi.com 传输数据。视图源不显示 URL。这正在减慢我们的网站速度。
任何帮助是极大的赞赏。