软件工程学术顶会——ICSE 2023 议题(网络安全方向)清单与摘要

news/2024/11/16 22:24:42/

按语:IEEE/ACM ICSE全称International Conference on Software Engineering,是软件工程领域公认的旗舰学术会议,中国计算机学会推荐的A类国际学术会议,Core Conference Ranking A*类会议,H5指数74,Impact score 11.55。2023年完整的议题清单参考此处:https://conf.researchr.org/program/icse-2023/program-icse-2023,有些议题并没有公开pdf,涉及网络安全议题的只有6篇。虽然会议属于软件工程领域,但是每年都会有一些安全议题,比如近2年都会有Fuzzing,AI  for security相关议题,也是值得关注的研究方向。

babd32aee5f54d5843ce4303c6dd1efd.png

1、ASTRO: An AST-Assisted Approach for Generalizable Neural Clone Detection

神经克隆检测已经引起了软件工程研究人员和从业者的关注。然而,大多数神经克隆检测方法无法推广到训练数据集中未出现的克隆范围之外。这导致模型性能不佳,尤其是在模型召回率方面。在本文中,我们提出了一种抽象语法树(AST)辅助的通用神经克隆检测方法,即ASTRO,这是一种用于在反映行业实践的代码库中查找克隆的框架。我们提出了三个主要组成部分:(1)一种基于AST的源代码表示形式,利用程序结构和语义;(2)一个全局图表示,捕获AST在程序语料库中的上下文;(3)一个程序的图嵌入,与现有的大规模语言模型相结合,提高了最先进的代码克隆检测技术。我们的实验结果表明,ASTRO在召回率和F-1得分方面均优于最先进的神经克隆检测方法。

https://arxiv.org/pdf/2208.08067.pdf

ced20ba36d519236b10b1a5e8091a4b9.png

2、Truth or Dare: Real-World Fuzz Testing of UAVs in Flight

小型无人机系统(sUAS)在高压应急响应场景中部署时需要满足严格的安全要求。这需要对硬件、软件、通信网络和人机交互点进行系统测试。模糊测试在查找边缘情况下的故障方面特别有效,这些故障可能会被忽略。在物理-数字系统中,如sUAS,测试通常从模拟转移到实际世界。但是,即使在模拟中完美执行的测试有时也可能在物理sUAS上运行时出现严重失败,凸显了增强模拟与现实世界模糊测试的重要性。不幸的是,真实世界的模糊测试不仅非常耗时,而且可能是危险的,因为有效模糊测试产生的必然失败可能会导致sUAS冲毁或飞走。在本次演讲中,Cleland-Huang将借鉴她自己在开发和验证sUAS应用软件方面的真实经验,并探讨现场模糊测试的‘真相’和‘挑战’。事实是,在进行物理飞行测试的正常过程中,意外的错误输入值可能会导致严重的失败和崩溃,但是在系统中暴露需要修改的脆弱点时也可能非常有帮助。然而,意外的模糊测试远远达不到真正模糊测试的系统目标,引入了如何在现场安全地部署模糊测试的非微不足道的困境。本次演讲通过探讨一种系统化的方法来对物理sUAS系统进行模糊测试,从而使测试人员能够在可能被模拟忽略的边缘情况下识别现实世界的弱点。最终结果是增强了真实世界sUAS系统的稳健性。

6e06308e4bbbd769e857845f1ccc7f29.png

3、Automatic Detection of Security Deficiencies and Refactoring Advises for Microservices

微服务架构使组织能够缩短开发周期并快速交付云原生应用程序。然而,它也带来了需要开发人员解决的安全问题。因此,在微服务中进行安全测试变得更加关键。最近的研究论文表明,由于缺乏时间、缺乏安全领域的经验和缺乏自动化测试环境等原因,微服务的安全测试经常被忽略。尽管存在多种安全扫描工具来检测容器、容器化工作负载管理(Kubernetes)和网络问题,但是单个工具无法覆盖微服务中的所有安全问题。使用多个扫描工具会增加分析结果和缓解安全漏洞的复杂性。本文提出了一个完全自动化的测试工具套件,可以帮助开发人员解决微服务中的安全问题并解决它们。它旨在通过将开源扫描工具封装到一个套件中并提供改进的反馈来减少安全活动的时间和精力。开发的安全扫描套件名为石榴(Pomegranate)。为了开发Pomegranate,我们采用了设计科学,并在Ericsson进行了调查。我们使用静态方法评估了我们的工具。评估结果表明,Pomegranate可以通过提供简化和分类的输出来帮助开发人员检测微服务中的安全漏洞。超过一半的从业者给我们反馈,他们发现Pomegranate有助于检测和缓解微服务中的安全问题。我们得出结论,一个完全自动化的测试工具套件可以帮助开发人员解决微服务中的大多数安全问题。基于本文的发现,未来的工作方向是在实时项目中对Pomegranate进行动态验证。

https://ieeexplore.ieee.org/document/10169061/

98939dbd388c90c9381ef8d46574a7df.png

4、On the Strengths of Pure Evolutionary Algorithms in Generating Adversarial Examples

深度学习(DL)模型被认为是高精度的,但容易受到对抗性样本的攻击。早期的研究集中于使用白盒策略生成对抗性样本,后来的研究则专注于黑盒策略,因为模型通常不可被外部攻击者访问。以前的研究表明,基于近似梯度下降算法和元启发式搜索的黑盒方法(即BMI-FGSM算法)优于之前提出的白盒和黑盒策略。在本文中,我们提出了一种基于差分进化(DE)的全新黑盒方法,纯粹依靠差分进化来生成对抗性攻击,而不使用任何梯度近似方法。我们提出了两个自定义变异算子的定制DE变体:(1)单目标(Pixel-SOO)变体,生成欺骗DL模型的攻击,(2)多目标(Pixel-MOO)变体,同时最小化生成攻击中的改变数量。我们在五个经典图像分类模型上进行了初步研究,结果表明Pixel-SOO和Pixel-MOO比现有的BMI-FGSM更有效地生成对抗性攻击。此外,Pixel-SOO比Pixel-MOO更快,而后者产生的攻击比其单目标变体更微妙。

https://pure.tudelft.nl/ws/portalfiles/portal/149088283/V4_Less_is_More_Minimal_Adversarial_Example_Generation_with_Multi_objective_Search_1.pdf

53938096a061b50cd7075a7020328a41.png

5、Continuous Fuzzing: A Study of the Effectiveness and Scalability of Fuzzing in CI/CD Pipelines

模糊测试已经被证明是一种自动化软件测试的基本技术,但也是一种代价高昂的技术。随着CI/CD实践在软件开发中的广泛应用,一个自然的问题是“考虑到代码变化的速度和自动化的交付/部署实践,将模糊测试集成到CI/CD管道中的最佳方法是什么?”事实上,Böhme和Zhu最近的一项研究表明,每五个bug中有四个是由最近的代码更改(即回归)引入的。在本文中,我们从自动化软件测试和持续开发的角度,着眼于将模糊测试器集成到CI/CD管道中。首先,我们研究了一种优化机会,即筛选出不需要模糊测试的提交,并通过实验分析发现,在我们分析的9个库中,平均模糊测试的工作量可以减少约63%(对于其中6个库而言,可以减少超过40%)。其次,我们研究了模糊测试运行时间对CI/CD过程的影响:短时间的模糊测试(例如15分钟)有助于更快的管道,仍然可以发现重要的bug,但可能会降低发现复杂bug的能力。最后,我们讨论了一种优先级策略,可以根据一组预定义的优先级策略自动为模糊测试活动分配资源。我们的研究结果表明,持续模糊测试(作为CI/CD自动化测试的一部分)确实是有益的,而且有许多优化机会可以提高模糊测试的有效性和可扩展性。

https://arxiv.org/pdf/2205.14964.pdf

4decd2666bfbb7d35f80ebf33be01806.png

6、Grammar-Based Evolutionary Fuzzing for JSON-RPC APIs

Web应用程序编程接口(API)允许通过编程方式访问系统,并构成互联网的基础。RESTful和RPC API是最常用的API架构之一。在过去的几十年中,研究人员提出了各种自动化测试RESTful API的技术,但据作者所知,没有关于测试JSON-RPC(RPC支持的两种数据格式之一)API的工作。为了解决这个限制,我们提出了一种基于语法的进化模糊测试方法,用于测试使用JSON-RPC API的方法,并使用一种新颖的黑盒启发式算法。具体来说,我们使用基于层次聚类的多样性适应度函数来量化API方法响应之间的差异。我们的假设是,与以前看到的响应不同的响应表明已到达新的未发现的代码路径。我们在使用JSON-RPC API的大型工业区块链系统XRP分类账上评估了我们的方法。我们的结果表明,所提出的方法比基线(基于语法的模糊测试器)表现显著优异,并覆盖了额外的240个分支。

https://research.tudelft.nl/en/publications/grammar-based-evolutionary-fuzzing-for-json-rpc-apis


http://www.ppmy.cn/news/977680.html

相关文章

入门前端监控

背景 前端监控是指通过一系列手段对Web页面或应用程序进行实时监控和数据采集,以了解页面或应用程序的性能状况、用户行为等等,并及时发现和解决潜在的问题。一个完整的前端监控平台可以包括:数据收集与上报、数据整理与存储、数据展示这里仅…

Android onTouchEvent方法不触发ACTION_UP的解决方法

Overridepublic boolean onTouchEvent(MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN://触摸、按下setImageResource(R.mipmap.ic_music);break;case MotionEvent.ACTION_UP://抬起setImageResource(R.mipmap.ic_launcher);break;}return sup…

typescript前三章编译器,类型系统,类型

typescript编程指南 资料参考来源 O’reilly(Typescript编程Programming Typescript)BorisCherny著 安道 译 第一章 导言 当我使用JavaScript语言时候,检查异常,往往要等到代码运行的时候,才能检查出代码问题所在,这使得我们需要…

如何避免AWS的高额账单?

前言 Serverless架构在今天已经不再是新鲜的事物。该架构具有多个特点:较低的运营和开发成本、能快速上线、自动扩展、安全性高和适合微服务等。各大云服务商也提供了各自的Severless解决方案。然而,尽管Serverless架构在某些方面表现出色,但…

《面试1v1》Kafka的架构设计是什么样子

🍅 作者简介:王哥,CSDN2022博客总榜Top100🏆、博客专家💪 🍅 技术交流:定期更新Java硬核干货,不定期送书活动 🍅 王哥多年工作总结:Java学习路线总结&#xf…

Java进阶 —— 注解与反射

前言 在了解完Java中的集合和IO流之后,荔枝继续梳理有关Java反射的知识,这个基础知识点也是在面试中可能会考到滴哦,荔枝希望自己对于整个Java知识的理论体系有一个完整的认知,所以在接下来的几篇文章中依旧梳理是比较枯燥的理论知…

Docker Compose 容器编排 + Docker--harbor私有仓库部署与管理

目录 一、Docker Compose简介 1、Docker Compose 的YAML 文件格式及编写注意事项 2、Docker compose 使用的三个步骤 3、 Docker Compose配置常用字段 4、 Docker Compose 常用命令 5、 Docker Compose 文件结构 二: Docker Compose 安装 1、Docker Compose…

mybatis_使用

第一步&#xff1a; 编写接口 第二步&#xff1a; 编写对应的mapper中的sql语句 第三步&#xff1a; 测试 CRUD <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http…