小编Goy*_*uix的帖子

通过ASP.NET 4 <%:%>或Razor编码获取但由AntiXSS捕获的XSS漏洞的示例

我正在寻找一个XSS漏洞的例子,只需使用AntiXSS Encoder 4.1 Beta作为运行时编码器(在system.web/httpRuntime中设置)就可以阻止该漏洞.我更喜欢不需要任何显式调用AntiXss函数的东西,比如

@AntiXss.JavaScriptEncode(ViewBag.UserName)
Run Code Online (Sandbox Code Playgroud)

我正在考虑一些可以通过ASP.NET黑名单获得但不会通过AntiXSS白名单的内容,可能与备用字符集或编码有关?

我测试过UTF-7漏洞,但看不到任何影响现代浏览器的漏洞.

security xss antixsslibrary asp.net-mvc-3

10
推荐指数
1
解决办法
2760
查看次数

Oracle:OALL8处于不一致状态

作为升级JRun的一部分,我们正在从1.4 JVM迁移到1.6 JVM.现在我得到一个非常奇怪的oracle db错误:"OALL8处于不一致状态".我已经确定了插入不使用绑定变量的查询的问题 - 所有内联参数.如果我在没有任何绑定变量的情况下运行查询,则会出现上述错误.只要我用绑定变量替换其中一个硬编码值 - 一切都可以正常工作.

另一个奇怪的是,在执行查询后,它实际上已提交给数据库.我可以从另一个会话连接并查看插入的行.我已经尝试在事务中包装查询,并且它似乎成功,因为没有显式事务,查询的行为没有改变.

以下是相关细节:

Java版本:1.6.0_12-b04
虚拟机版本:11.2-b01(HotSpot服务器)
Oracle服务器:10.2.0.4
Oracle客户端:11.1.0.7.0到ojdbc6.jar

更新:我使用的是cfqueryparam - 它们在oracle世界中被称为绑定变量.虽然这确实解决了当前的问题,但我们有一个相当大的遗留代码库,我们无法通过实际更新查询作为从CF7升级到CF8的一部分.

即使我已经确定了一个失败的特定情况(并将其封装在mxunit测试中) - 这并不意味着没有其他领域可能存在这个问题.我真的希望有一个解决方案来消除OALL8错误,而不是围绕它编码.

更新2:在使用我们的DBA检查后,他已将名为CURSOR_SHARING的参数设置为SIMILAR.Oracle默认为EXACT.发生的事情是当ColdFusion将查询关闭以执行时,Oracle正在将所有文字值转换为绑定变量,这似乎使ColdFusion感到困惑.将设置恢复为EXACT允许文字查询正常工作.

更新3: Oracle最终向我们发布了一个JDBC的带外补丁.它被识别为JDBC错误.最新的驱动程序应该在它们最终更新时包含它.如果您有支持,也可以通过他们的TAR系统请求补丁.

java oracle coldfusion jrun jdbc

8
推荐指数
1
解决办法
4万
查看次数

如何在没有代码隐藏文件的情况下创建ASMX Web服务页面

我已经能够创建没有代码背后的ASPX页面,但我不能为我的生活找出魔术组合,让ASMX页面无需代码就可以工作.这甚至可能吗?

c# asp.net

7
推荐指数
1
解决办法
7360
查看次数

在PowerShell v2中编译新类型 - Cookie Aware WebClient

我正在尝试编译WebClient类的" cookie感知 "版本- 但我似乎无法克服使用PowerShell v2中添加的Add-Type cmdlet的一些障碍.这是我试图编译的代码:

PS C:\> $def = @"
public class CookieAwareWebClient : System.Net.WebClient
{
  private System.Net.CookieContainer m_container = new System.Net.CookieContainer();
  protected override System.Net.WebRequest GetWebRequest(System.Uri address)
  {
    System.Net.WebRequest request = base.GetWebRequest(address);
    if (request is System.Net.HttpWebRequest)
    {
      (request as System.Net.HttpWebRequest).CookieContainer = m_container;
    }
    return request;
  }
}
"@

PS C:\> Add-Type -TypeDefinition $def
Run Code Online (Sandbox Code Playgroud)

它似乎无法找到无法找到的CookieContainer类型(虽然它是完全合格的......) - 显然我对某些东西视而不见.

编辑:更新了示例代码以使其正确并且可以复制n-pasteable,谢谢!

c# powershell webclient powershell-2.0

7
推荐指数
1
解决办法
1069
查看次数

查找MS Office Interop常量的值而不是硬编码

使用PowerShell,可以轻松创建Excel Application类的实例并开始操作它:

$app = New-Object -ComObject "Excel.Application"
Run Code Online (Sandbox Code Playgroud)

但是,如果我需要使用像xlDoubleQuote或xlDelimited这样的常量 - 似乎我不得不对它们进行硬编码.我真的希望能够做到这样的事情:

$constants = New-Object -ComObject "Excel.Constants"
$constants.xlDoubleQuote
Run Code Online (Sandbox Code Playgroud)

并且看到它将返回值1.不幸的是我无法创建枚举的实例,并且似乎没有像普通.NET类库那样引用它的方法:

[Excel.Constants]::xlDoubleQuote
Run Code Online (Sandbox Code Playgroud)

有没有办法将该枚举动态导入PowerShell?也许通过托管库而不是COM?

com powershell ms-office office-interop

7
推荐指数
2
解决办法
1777
查看次数

powershell删除特定的注册表项

我是PowerShell的新手,我试图从运行注册表项中删除一个特定的值.我正在使用该remove-item命令,但是,我没有看到指定单个值的开关.我不想删除整个键,只需要一个值.

作为参考批次等同于我想要做的事情:

reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v SunJavaUpdateSched /f
Run Code Online (Sandbox Code Playgroud)

powershell

7
推荐指数
2
解决办法
4万
查看次数

以编程方式安装证书吊销列表(CRL)

我需要每周下载并安装大约50个CRL,并将它们安装在多个Windows服务器上.下载是一个简单的部分,有没有办法编写CRL导入过程的脚本?

c# vbscript powershell scripting batch-file

6
推荐指数
2
解决办法
7319
查看次数

Coldfusion 8:IsDefined('URL.variable')并且不是""?

我试图找出url变量是否存在,如果不存在,请确保它不是空的.

这不起作用:

<cfif IsDefined('URL.affiliateId') and is not "">
    //
</cfif>
Run Code Online (Sandbox Code Playgroud)

coldfusion coldfusion-8

6
推荐指数
1
解决办法
2万
查看次数

使用JDBC连接从oracle返回插入语句的ROWID参数

我似乎无法获得正确的魔法组合来完成这项工作:


OracleDataSource ods = new oracle.jdbc.pool.OracleDataSource();
ods.setURL("jdbc:oracle:thin:app_user/pass@server:1521:sid");
DefaultContext conn = ods.getConnection();
CallableStatement st = conn.prepareCall("INSERT INTO tableA (some_id) VALUES (1) RETURNING ROWID INTO :rowid0");
st.registerReturnParameter(1, OracleTypes.ROWID);
st.execute();
Run Code Online (Sandbox Code Playgroud)

我得到的错误是"违反协议".如果我更改为registerOutParameter(),我会收到通知我没有注册所有返回变量.如果我将语句包装在PL/SQL中开始; 结束; 然后我使用常规registerOutParameter()调用得到参数.我真的更愿意避免在PL/SQL中包装所有的insert语句 - 那么上面缺少什么?

java oracle jdbc

5
推荐指数
2
解决办法
2万
查看次数

捕获标准从尾部-f"跟随"

我试图在跟随模式下捕获尾部的输出,在它检测到文件长度的变化时输出文本 - 特别适用于添加行时跟踪日志文件.出于某种原因,我对StandardOutput.Read()的调用是阻塞的,直到tail.exe完全退出.

相关代码示例:

var p = new Process() {
  StartInfo = new ProcessStartInfo("tail.exe") {
    UseShellExecute = false,
    RedirectStandardOutput = true,
    Arguments = "-f c:\\test.log"
  }
};
p.Start();

// the following thread blocks until the process exits
Task.Factory.StartNew(() => p.StandardOutput.Read());
// main thread wait until child process exits
p.WaitForExit();
Run Code Online (Sandbox Code Playgroud)

我也尝试使用对OutputDataReceived事件处理程序的支持,它表现出相同的阻塞行为:

p.OutputDataReceived += (proc, data) => {
  if (data != null && data.Data != null) {
    Console.WriteLine(data.Data);
  }
};
p.BeginOutputReadLine();
Run Code Online (Sandbox Code Playgroud)

我对StandardOutput.Read()的调用有更多的代码,但这简化了示例,仍然表现出不良的阻塞行为.我还能做些什么来让我的代码在子应用程序退出之前对StandardOutput流中的数据可用性做出反应?

这可能是tail.exe运行方式的一个怪癖吗?我使用版本2.0作为UnxUtils包的一部分编译.

更新:这看起来似乎至少部分与tail.exe中的怪癖有关.我从GnuWin32项目中获取了二进制文件,作为CoreUtils软件包的一部分,版本增加到5.3.0.如果我使用该-f选项而不重试,我在STDERR上遇到可怕的"坏文件描述符"问题(容易忽略),并且该过程立即终止.如果我使用该-F …

c# stdout process tail .net-4.0

5
推荐指数
1
解决办法
786
查看次数