强化扫描第三方dll'的功能
有什么方法可以强化扫描第三方DLL? 我正在命令行上翻译.NET项目,该项目已在调试模式下被预构建. 我使用的命令是: sourceanalyzer -b mybuild -vsversion 14.0 -libdirs [project-root]/**/*.dll i在旧版本的用户指南中注意到,它指出了第三方DLL的PDB不需要PDB,但在较新版本中,其状态下,第三方DLL需要第三方PDB. 不扫描第三方DLL的数据流和控制流分析的用处? 解决方案 您仍然要指定第三方DLL,这些dll在-libdirs选项中指定. 您指定的命令看起来像是缺少的部分,您指定了实际扫描的文件. 当我扫描.dlls时,这是我的翻译命令: sourceanalyzer -b test -Xmx8G -vsversion 14.0 @excludelist.txt -Dcom.fortify.sc
8 2024-04-25
编程技术问答社区
如何修复C#中的日志伪造
我正在使用log4net登录我的Web API应用程序.我正在使用以下代码来记录数据库中的错误和错误. public async Task ExecuteNonQuery(string procedureName,params SqlParameter[] parameters) { try { this.logger.DebugFormat("{0} stating call",procedureName); ...... ...... ...... } further code 当我施加强化扫描时,它给了我日志锻造问题.有什么想法我们如何解决这个问题.我尝试了以下代码,但没有工作 procedureName = Regex.Replace(procedureName, "[^ A - Za - z0 - 9 $]", string.Empty); 解决方案 强化正在防止为了对抗这一点,必须仔细控制日志文件中使用的用户输入的哪些部分
8 2024-04-24
编程技术问答社区
从Fortify sourceanalyzer命令行获取文本输出
与问题有关: fortify命令行的用法/p> 我想对由TeamCity的命令行跑步者触发的.NET解决方案进行夜间强化扫描.我想将结果自定义摘要发布到网页上. 我想要的关键信息是每个关键级别的问题数量. 我以前已经使用了-f命令行开关与审计工作台客户端一起使用,但是结果.fpr文件看起来很难解析和手动解释. 我正在使用Fortify Static Code Analyzer 5.15.0.0060,似乎没有一个可以用来指定文本的选项. 有没有办法获得扫描发现的问题的数量? 解决方案 使用reportgenerator实用程序.它是专门为此目的而设计的.
12 2024-04-23
编程技术问答社区
在.Net Core中,默认情况下,String是不能被序列化的吗?
我正在审查其他静态分析安全测试(SAST)扫描报告,以识别和抑制误报.应用程序框架是C#.NET Core. SAST报告部分读取: " method1()在第111行上存储了一个不可隔离的对象作为HTTPSESSIONSTATE属性,该属性可能会损害应用程序的可靠性.将非序列化对象作为HTTPSESSIONSTATE属性存储为HTTPSESSIONSTATE属性会损害应用程序可靠性./p> 第111行的代码就像: Session[key] = Request.QueryString["abcd"]; 我将以误报抑制问题,因为我们正在存储字符串对象,并且默认情况下的字符串是序列化的.但是后来我研究并发现"默认情况下的字符串是序列化的"仅在.NET框架中是正确的,因为字符串定义用.NET中的可序列化属性装饰.而在.NET中,核心字符串的定义不是用可序列化属性装饰的. 所以,因为这是.NET核心应用程序,所以强化的Sast断言正确吗?默认情况下,.NET Core中
6 2024-04-22
编程技术问答社区
惠普强化关于路径操纵的验证规则
我正在通过HP Fortify运行代码,并具有一些路径操纵发现.我了解它的背景并尝试解决. 我尝试将其集中在数据库中(日志,导出数据等)来存储输出文件(日志,导出数据等),而不是浏览所有路径值的地方.因此,我不想将file.writealltext()带有一些路径 +文件名,内容,而是想包装到 中 fortifyFileWriteAlText().然后,在此功能中,我进行路径验证一次检查一次,如果有效,则仅允许写入继续如... public static bool FortifyFileWriteAllText( string fileToWrite, string content) { if( ! MyPathValidationRoutine( fileToWrite )) return false; File.WriteAllText( fileToWrite, content ); return true; } 所以,我知道这是
8 2024-04-21
编程技术问答社区
强化命令行的使用
是否有人使用命令行来强化? 我试图将强化运行纳入我的CI构建中,但我不知道该怎么做. 解决方案 由于我无法添加评论,因此我必须将其作为答案.我们公司已将扫描过程集成到我们的TFS构建环境中,并且效果很好. 我们使用一系列"调用过程"构建活动来实现这一目标.整个安全扫描序列都包裹在条件上,该条件是将其作为构建定义的参数.这使我们能够根据需要启用或禁用扫描.我们还揭露了其他一些事情,例如强化项目,强化项目版本以及上传FPR文件的另一种条件. 要点是: 清洁 sourceanalyzer -b "Build ID" -clean 构建 sourceanalyzer -b "Build ID" devenv BuildID.sln /Rebuild Debug /out "C:\SSCLogs\SSCBuild.log" 扫描 sourceanalyzer -b "Build ID" -scan -format fpr -f BuildID
10 2024-04-13
编程技术问答社区
Laravel Fortify自定义认证重定向
在自定义身份验证过程中的Laravel Fortify中,我无法重定向到登录页面,并使用我们能够在AUTH中执行的错误消息. 这是自定义文档链接: if ($user && Hash::check($request->password, $user->password) && $user->status == 'active') { return $user; } elseif ($user->status == 'inactive') { //redirect with some error message to login blade } elseif ($user->status == 'blocked') { //redirect with some error message to login blade } 请帮助我. 解决方案 对于来自使用Laravel Jetstream的Google搜索者(使用fortify): Snapey laracasts 制作了一
8 2024-03-19
编程技术问答社区
违反安全规定 | Fortify, MVC
我正在使用HP Fortify解决我的应用程序中的安全问题. 我有一块代码,如下所示,该代码会引发错误. 强化结果说: fileName .cs的方法下载方法()包括未验证 线上的HTTP响应标头中的数据 lineno .这可以攻击 例如悬浮式,跨站点脚本,跨用户污损, 页面劫持,饼干操纵或打开重定向. 代码 - public ActionResult DownloadAttachment(string fullFilePath) { var bytes = System.IO.File.ReadAllBytes(fullFilePath); return File(bytes, MimeMapping.GetMimeMapping(fullFilePath), Path.GetFileName(fullFilePath)); } 这里有什么威胁以及如何解决这个问题?有什么建议吗? 解决方案 hp
16 2024-03-14
编程技术问答社区
HP Fortify : ASP.NET的不良做法。会话中存储的不可序列化的对象
httpcontexthelper.cs中的方法set_useractiveEnvironments()在第47行上以HttpsessionState属性作为httpsessionState属性存储一个非serializable的对象,该属性可能会损坏应用程序可靠性 默认情况下,ASP.NET服务器存储HttpsessionState对象,其属性和它们在内存中引用的任何对象.该模型将主动会话状态限制为单台计算机的系统内存可以容纳的状态.为了扩展能力超出这些限制,服务器经常被配置为持续的会话状态信息,既可以扩展容量,又允许在多台机器上复制以提高整体性能.为了坚持其会话状态,服务器必须序列化httpsessionstate对象,该对象要求存储在其中的所有对象均可序列化. 为什么它显示为漏洞,我该如何修复? 解决方案 Mohanraj,也许您已经找到了解决方案,但是以下是一个合理的解释: HP强化指示有一些假阳性,这就是为什么您需要在每个漏洞上通过情况进行分析的原因,
6 2024-03-09
编程技术问答社区
EnableHeaderChecking=true是否足以防止Http Header注入攻击?
拥有[System.Web.Configuration.HttpRuntimeSection.EnableHeaderChecking]( http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.enableheaderection.enableheaderchecking(vs.85).85) >(默认)完全防止HTTP标头注入攻击,例如响应分裂等.? 我要问的是因为白盒渗透测试工具(FOTIFY)报告了可利用的HTTP标头注入问题和cookie,但我没有找到成功执行攻击的方法. (编辑:..并且我们有EnableHeaderchecking已打开..) 解决方案 我已经看过一段时间了,得出一个结论,即设置 EnableHeaderChecking to true实际上足够好,足以防止HTTP标头注射攻击. 查看"反射" ASP.NET代码,我发现:
2 2024-03-09
编程技术问答社区
如何使用Fortify Scan 16.11来扫描带有project.Json的dotnet core?
我创建了一个默认的.NET CORE 1.0.1类库,并更改了Project.json中的buildOptions.包括debugtype:" full".我使用16.11使用了Integrated vs 2015 Fortify扫描,并在下面遇到错误.我应该如何扫描dotnet核心避免此问题? project'Src \ supportfileinpackage \ supportfileinpackage.xproj'未配置为输出完整的调试信息. SCA分析需要完整的调试符号.您想忽略项目并继续吗? (项目属性 - >构建 - >"高级"按钮 - >调试信息 - >" full" 或者 项目属性 - > compile->高级选项 - >调试信息 - > vb的"完整" 我的项目JSON看起来像 { "version": "1.0.0-*", "dependencies": { "NETStandard.Library": "1.6.0" },
8 2024-01-08
编程技术问答社区
是URLEncoder。编码(字符串,��UTF-8��) 验证不好?
在我的J2EE/Java代码的一部分中,我对getRequestURI()的输出进行了一个urlenCodode,以消毒以防止XSS攻击,但强化SCA认为验证差的差异很差. 为什么? 解决方案 关键点是您需要将HTML特殊字符转换为HTML实体.这也称为" HTML逃脱"或" XML逃脱".基本上,字符,",&和'需要用<,>,>,",&,&和'代替. P> url编码不这样做. URL编码将URL特殊字符转换为编码百分比的值.这不是HTML逃脱. 在Web应用程序的情况下,通常在视图侧进行HTML逃逸,正好在其中重新播放用户控制的输入.如果使用Java EE Web应用程序,则取决于您使用的视图技术. 如果WebApp使用现代Facelets查看技术,那么您就无需自己逃脱. Facelets已经隐含地做到这一点. 如果WebApp正在使用Legacy JSP视图技术,则需要确保使用JSTL
10 2023-12-24
编程技术问答社区
密钥管理。chart.js的硬编码加密密钥
i面临与"密钥管理:硬编码的加密密钥"有关的问题.我们正在使用强化扫描出于安全目的.如何避免"硬编码的加密密钥". 扫描后,我们找到了图表中的硬编码的代码线.有什么方法可以解决此问题. var axisType = helpers.getValueOrDefault(valueObj.type, key === 'xAxes' ? 'category' : 'linear'); 解决方案 分析了Chart.js代码文件后,我们发现没有硬码加密密钥. 键是可变名称. hp强化将"键"单词确定为加密密钥.这些不是加密密钥,它是一个变量名称.因此,这是一个假阳性.
34 2023-12-24
编程技术问答社区
强化文件中的跨网站脚本攻击
我在控制器中具有以下代码. 参数base64string,FileName正在浏览器发送. var fileContent = Convert.FromBase64String(base64String); return File(fileContent, contentType, fileName); 我如何在这里解决XSS威胁? 上面的代码基于此处建议的修复 kendo ui ui网格导出到Excel/pdf不起作用在IE9 上 解决方案 我假设您没有将HTML返回给您的用户(您正在返回PDFS或Excel文件,或者是浏览器下载的其他内容,而不是用于渲染). 一般准则如下: 设置正确的Content-Type标头. 设置以下响应标头:X-Content-Type-Options: nosniff.浏览器,例如 Internet Explorer将尝试并自动检测内容类型您的您' ve只是设置. 设置Content-Disposition标题
8 2023-12-24
编程技术问答社区
我正在跨站点脚本:撑杆验证不佳
我在HP Fortify中扫描了我的申请,并遇到了问题Cross-Site Scripting: Poor Validation.我正在使用Esapi库.我在Struts应用程序上得到了这一发现. public String printApplications() throws IOException, ServletException { request.setAttribute(TableDisplayBean.TABLE_BEAN, tableBean); } 使用ESAPI编码tableBean.formName? 的适当语法是什么 解决方案 之前:
10 2023-12-24
编程技术问答社区
XSS预防的ESAPI不工作
我正在努力修复我们的代码中的跨站点脚本问题. 以下是原始代码 //scriplet code ,在同一JSP中,它们具有 我进行了更改,以包括esapi-2.1.0.jar在lib and esapi.properties中,验证.然后对Scriplet代码进行更改以修复上述代码 //scriplet code 我认为这可以解决这个问题,但是当我使用强化扫描代码时,这些行再次被强调为XSS问题.
10 2023-12-24
编程技术问答社区
如何在TransformerFactory上防止XML外部实体注入
我的问题: 强化4.2.1在代码以下标记为XML外部实体攻击易感. TransformerFactory factory = TransformerFactory.newInstance(); StreamSource xslStream = new StreamSource(inputXSL); Transformer transformer = factory.newTransformer(xslStream); 解决方案我尝试过: 为XMLConstants.FEATURE_SECURE_PROCESSING设置TransformerFactory功能. 探讨了为TransfererFactory提供更多此类功能的可能性,就像我们为DOM和SAX解析器所做的那样.例如拒绝Doctype声明等.但是TransformerFactoryImpl似乎并没有接受其他任何XMLConstants.FEATURE_SECURE_PROCESSING. 请我指出您认
58 2023-12-24
编程技术问答社区
HP fortify XML外部实体注入
hp强化向我展示了以下代码上的XML外部实体注入: StringBuilder sb = new StringBuilder(); StringWriter stringWriter = new StringWriter(sb); xmlSerializer.Serialize(stringWriter, o); XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(stringWriter.ToString()); //bad code result = xmlDoc.ChildNodes[1].OuterXml; 在上面显示以下行中的漏洞 xmlDoc.LoadXml(stringWriter.ToString()); 我该如何解决这种情况? 解决方案 使用xmldoc.xmlresolver = null;加载XML之前. 其他解决方案 Xmldocument对象中有一个XMLResolver
16 2023-12-21
编程技术问答社区
Fortify在扫描Visual Studio项目时抛出错误
我正在尝试在Visual Studio 2008项目中进行强化.该项目自行建立.当我尝试使用Visual Studio集成控件通过Fortify分析项目时,该项目成功构建,但会抛出错误消息.这是Fortify Console的输出: Fortify SCA... Running: "-show-runtime-properties" Running: "-b" "ProjectName" "-clean" Error setting VCProject Path. Abort VC project related scan Scan Failed Could not load file or assembly 'Microsoft.VisualStudio.VCProjectEngine, Version=8.0.0.0, Culture=neutral, PublicKeyToken=' or one of its dependencies. The
4 2023-11-23
编程技术问答社区