未发布 解析企业使用开源软件的潜在风险 很多企业都选择使用开源软件(OSS)构建更加灵活的产品,但其中也存在潜在的风险,软件供应商和IoT制造商都有必要去了解一下隐藏在软件供应链中的风险。
已知风险
例如,犯罪分子就完全可以利用Apache Struts CVE-2017-5638漏洞来获取Equifax客户的个人资料。众所周知,Apache Struts是一种广泛使用的开源组件 – Web服务器的框架,它可以用于接收和提供公司内部系统中的商业数据。归根到底,还是因为这个开源组件所存在的漏洞以致于使其成为网络攻击的主要目标。
主要发现
根据Flexera的一份最新报告显示,在商业和IoT软件产品中所发现的代码有百分之五十都是与开源软件有关的。但调查显示只有37%的受访者表示曾获取并使用开源软件。而63%的公司说,他们并没有获取或使用开源软件,或者说他们根本就不知道有这种情况的存在。
并且据了解,目前基本没有人对开源软件的安全性负责:39%的受访者表示,在他们公司内部没有人会对开源软件的安全性负责,或者可以说他们压根就不知道应该是由谁来负责。
除此之外,开源软件的贡献者也不是遵循最佳实践:33%的受访者表示自己的公司曾为开源项目做出了贡献。但是,又有63%的受访者表示他们的公司压根并没有开源采购或使用政策,当然也有43%的受访者表示自己本身对开源项目也有做出贡献。
不管怎样,我们都不能忽视开源确实是一个明显的捷径。 Flexera产品管理副总裁Jeff Luszcz表示:“完全开源可获取的代码可以快速获得产品,这对于软件开发的快速节奏来说非常重要。” “然而,大多数软件工程师并没有在私下里去跟踪开源的使用情况,而且有绝大部分的软件高管都没有意识到其安全/合规风险方面存在一定差距。”
事实上,对于开源软件使用过程中的安全合规、许可等流程可能远比简单的拿来用要方便的多,但这些流程毫无疑问是必不可少的。
“开源软件的安全合规流程能够很好的保护产品和品牌声誉。但大多数软件和IoT厂商都没有意识到存在的问题,所以他们并没有保护自己和户,”Luszcz说,“对于暴露产品合规性和漏洞风险的供应商,还有那些压根就不知道他们运行开放源代码和其他第三方软件的客户,甚至可能是包含软件漏洞的客户 ,这些都是会危及到整个软件供应链。”
2017慧都十四周年狂欢搞事情!砸金蛋100%抽现金红包、满额豪送iPhone X、iPhone 8、DevExpress汉化免费送、团队升级培训套包劲省10万元......更多惊喜等您来探索!

未发布 全面的.NET图像处理包DotImage v10.7.0.7发布丨附下载 DotImage
Atalasoft DotImage 是一款功能完善的图像处理包,它主要针对.NET的开发。它为基于.Net框架开发的Windows应用程序以及基于IE的Asp.Net程序提供高级的图像处理功能。DotImage 提供了很多Microsoft .NET Framework一样的设计模式,并向开发者提供功能丰富,高性能,授权方式灵活的对象模式。
DotImage v10.7.0.7更新内容
v10.7.0.7中的修复的问题
- [TiffDecoder]Customer图片会导致TiffDecoder出现SEHException异常。
- [AdvancedDocClean] LineRemovalCommand在某些图像上会引起不可修复的System.AccessViolationException,从而破坏主机进程。
- [AbbyyEngine] OcrTableRegion.Cells没有被填充。
- WebDocumentViewer getDocumentInfo对removePage的调用不成功。
上一个版本中修复的问题
- 在特定的PDF中使用修复功能会导致新版本出现异常。
- [MVC] NuGet库中缺少Atalasoft.dotImage.WebControls.MVC(包括x86和x64)。
- [WDV] Async方法可能会在浏览器页面刷新期间/之后引起控制台发生错误。
- 使用PdfDocument.Save格式保存时,Multipage PDF页面会引用前几页的资源。
- 保存PDF时,无效的PDF属性值会引起异常。
- [PdfAnnotationDataExporter]使用OverwriteExistingAnnotations = true保存到特定图层时,会覆盖掉上一层。
- PDF417条形码不可读取。
- Customer DWG文件在DwgDecoder中呈现时丢失图像。
- WebDocumentViewer会调用触发了ThreadAbortException的Response.End。
- PdfDocument.Repair对于某些格式不正确的链接可能会删除而不是修复。
- [PdfTextDocument]文本提取结果在某些文档上使用时会丢失内容。
- 当SelectionMode = ThumbnailSelectionMode.MultiSelect时WinForms ThumbnailView / FolderThumbnailView SelectionIndexChanged会触发两次。
- RawDecoder注册时,Customer file会引起System.AccessViolation异常。
- [PdfGeneratedDocument] PdfTextLine会忽略通过构造函数传递的FillColor和OutlineColor值。
- [PdfDocument]一些PDF文件在PdfDocument中打开时会发生StackOverflow问题。
- [PdfDocument]使用PdfDocument / PdfAnnotationDataImporter打开一些PDF时会出现Overflow问题。
- WebDocumentThumbnailer:当tabular:true set时,滚动条未正确更新。
- 客户在Logger中报告的竞争条件/非线程安全行为。
- “不支持Colourspace转换”的Customer tiffs无法打开。
- 755266:WDV - 打开non-relative web根路径将导致WDV保存失败。
- [PdfDocument]如果我们多次将新页面添加到文档时,Adobe Acrobat将无法读取pdf文件。
- 只有页面可见时,WebDocumentViewer Rotate方法才会更新。
- [OfficeDecoder]无论解码器分辨率如何设置,Office文件始终呈现默认的DPI(大多数系统上为96)。
- [PdfEncoder]使用PdfCompressionMode.Segmented保存大文件(大量页面)会发生内存的问题。
- [BarCodeReader] DataMatrix条形码读取速度非常慢
- PdfCompressionMode.Segmented强制将灰度图像变为黑白,且这种行为没有记录。
- PdfDocument打开/保存时Customer PDF被损坏。
- [OfficeDecoder]部分office文件的表格标题中缺少内容。
- 带有AnnotationStreamWritten事件的WDV 10.7中的行为发生变化。
- 载入注释中的WDV regression。
- [DotTwain] HP scanners DeviceEvent 会使device.State进入无效状态。
- Barcoding.Reading.BarcodeReader没有读取到相应的客户代码。
- 10.7 WDV更改会破坏WingScan-only的许可。
- [PdfAnnotationDataExporter] EmbeddedImageAnnotation会增加目标PDF文件大小。
- [BarCodeReader] - 在其他引擎中读取的PDF-417条形码的Customer images在BarCodeReader中无法读取。
- [BarCodeReader]当前的BarCodeReader引擎无法读取旧的9.x(Inlite)引擎读取的条形码的全部内容。
- [PdfDocument]Customer PDF会引起关于MLPdfLabColorSpace的PdfException异常。修复后提示成功,但所有内容也会丢失。
未发布 【更新】支持多种格式音视频的本地.NET组件Audio Sound Recorder for .NET 更新至v9.0.0.0
Audio Sound Recorder for .NET v9.0.0.0更新内容:
新功能
支持播放声音,同时通过鼠标手动滚动波形滚动条。
支持通过外部编码器FdkAac.exe以AAC+格式记录和导出。
支持播放录制声音。
支持对录制声音进行高速播放,可以将声音保持原始速度。
支持以HLS格式(HTTP Live Streaming)进行流媒体回放。
增加了将Wasapi采集或回送设备的立体声录音会话分为两个单声道输出文件的可能性
增加了切换立体声分离录制会话的单声道输出文件的功能
波形分析仪的新选项
- 波形现在可以基于绝对值显示检测到的峰值
- 更多地控制时间标尺上显示的时间字符串的格式
- 可选的自动垂直缩放功能,用于低音量级别的波形
回放期间显示在波形视觉反馈上的峰值现在通过专用事件报告给容器应用程序。
增加了在录制和回放过程中检索峰值电平和RMS(均方根)电平的支持。
增加了从波形分析仪中检索包含波形峰值的缓冲区的可能性
新属性
新方法
CallbackWaveformValueChangeSet
StartSplitFromWasapiCaptureDevice
StartSplitFromWasapiLoopbackDevice
SwitchOutputFilesOnSplit
StreamPeakLevelsGet
RecordedSound.PlaybackRateGet
RecordedSound.PlaybackRateSet
RecordedSound.PlaybackTempoGet
RecordedSound.PlaybackTempoSet
RecordedSound.PlaybackRateRatioGet
RecordedSound.SoundDirectionEnable
RecordedSound.SoundDirectionGet
RecordedSound.SoundDirectionIsEnabled
RecordedSound.SoundDirectionSet
WASAPI.MixerInputDevicePeakLevelsGet
WaveformAnalyzer.AutoZoomEnable
WaveformAnalyzer.SettingsRulersTimeFormatSet
WaveformAnalyzer.PeaksBufferLengthGet
WaveformAnalyzer.PeaksBufferGet
WaveformScroller.PlaybackOnScrollEnable
WaveformScroller.PlaybackOnScrollInfoGet
新事件
新的回调委托
新的类
试用、下载、了解更多产品信息请点击"咨询在线客服"
未发布 【百厂年货节】Dynamsoft热销产品7.5折超级特惠,仅此一次!
Dynamsoft公司是版本控制和事件跟踪软件应用程序领域的领先开发商。 如今,大部分世界500强企业,包括 HP,IBM, Intel, 以及 Siemens 等都信赖 Dynamsoft 的解决方案,用它来处理版本控制和事件跟踪应用程序开发。于此新春佳节之际,慧都联合Dynamsoft公司针对中国客户进行百厂年货节促销活动,诚邀您的参与。
活动时间:2018年2月1日-2018年2月28日
活动内容:在活动期间内,购买
Dynamsoft 指定产品授权均可享受原价基础上
7.5折的超值优惠。
活动授权:
| 活动产品 | 授权 | 折扣 |
| HTML5 browsers for Windows(Per Production Server) | 年货节特惠7.5折 |
| HTML5 browsers for Windows(Per Non-Production Server) | 年货节特惠7.5折 |
| Scanner Module(1-Developer License) | 年货节特惠7.5折 |
| Scanner + Webcam Module(1-Developer License) | 年货节特惠7.5折 |
| 1D Barcode(Per Production Server) | 年货节特惠7.5折 |
| 1D Barcode(Per Non-Production Server) | 年货节特惠7.5折 |
| QRCode(Per Non-Production Server) | 年货节特惠7.5折 |
想要了解更多优惠信息?<咨询客服>可了解最新活动!
咨询热线:400-700-1020(免费) 023-66090381

未发布 微软C# 8.0中的四个特性 可空的引用类型(Nullable Reference Types)
可空的引用类型可概括地表述为,引用类型将不再默认可空。因此,开发人员必须使用定义可空值类型的同样语法“Type?”,显式地标记一个引用类型为可空。
如果将一个空值赋值给一个非可空的引用类型,那么将会给出一个编译器警告。与之相类似,从可空类型中读取也会给出编译器警告,除非显式地提前检查了被质疑的变量是否为空值。因此从理论上讲,开发人员需要做的唯一更改就是在代码的适当位置标上问号。
该特性新加了一个语法。该语法针对开发人员明知一个可空变量x并非实际为空值却无法证明给编译器的情况。在上述情况下,开发人员现在可以定义x!.Method(),消除编译器对于潜在空值引用异常的警告。
异步流(Async Streams),即foreach async
异步流是IEumerable的异步等价类。C#团队自2015以来就一直在努力实现异步流。在经历了很多争议后,其语法被定为: foreach await (string s in asyncStream)
开发人员将使用如下的函数签名定义一个异步迭代器:
async IAsyncEnumerable MethodName()
就像使用一个正常的IEnumerable方法一样,开发人员可以使用“yield return”以懒方式(Lazy)构建对象流。
相比于源自响应式扩展(Reactive Extensions)的IObservable,使用这一方法的优点在于让消费者控制流速,这被称为“Pull模式”。与之相对,IObservable是一种“Push模式”,这意味着生产者可以使用高于消费者所能处理的流速让流涌向消费者。
缺省接口实现(Default Interface Implementations)
缺省接口实现在本质上是一种有限形式的多重继承。它允许抽象接口像抽象类一样,对方法进行完全的定义,只是抽象接口依然不能定义构造函数和字段。
需注意,开发人员可以通过使用ConditionalWeakTable在接口上模拟字段。
默认接口实现的主要好处是,开发人员可以在不破坏向后兼容的条件下,将一个新方法添加到一个已有的接口中。但是这并非是有保证的,因为默认接口只是在可以设计出适合的默认方法时才能工作。
扩展(Extension)
开发人员可以编写扩展方法,但是不能扩展属性,这是长期以来对C#一直存在的一个问题。事实上,如果使用当前的模式,甚至是不能定义一个扩展属性或事件的。此外,在很多开发人员看来,在静态类中放置扩展方法是“很诡异的”。
新的设计中新给出了一种称为“扩展”(Extension)的顶层语言构件。例如,如果开发人员想要为自定义的Customer类创建一个扩展方法和属性,可编写如下代码:
extension CustomerExt extends Customer {
//定义方法和属性的代码。
}就接口而言,是不能在扩展中定义实例字段的,但是可以使用ConditionalWeakTable实现模拟。定义静态字段也是允许的。
除了对属性、事件和操作符重载的扩展,C#团队甚至考虑允许扩展构造函数。扩展构造函数非常适用于工厂模式(Factory)和对象池场景。
扩展接口(Extension Interfaces)C#团队还考虑了扩展接口,即在已有类中添加新接口的能力。但是扩展接口将不会成为C# 8中的特性,因为它需要更改底层的运行时。