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

news2024/11/25 18:37:22

按语: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.coloradmin.cn/o/785139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 在一个APP里打开另一个APP

前言 不知道你们有没有注意过,每次打开一些软件的时候都会有广告引导页,有时候手滑点到了,会有进入手机上的另一个APP,这有没有引起你的注意呢? 运行效果图 # 正文 为了测试这个功能,首先要创建两个项目&…

019 - limit

limit:限制返回结果数量; 该LIMIT子句可用于约束SELECT语句返回的行数 。 LIMIT接受一个或两个数字参数,这些参数必须都是非负整数常量,但以下情况除外: 在准备好的语句中,LIMIT 可以使用? 占位符标记指…

双端队列(deque)与优先队列(priority_queue)

文章目录 一.双端队列——deque1.deque的优点与缺点2.deque的原理 二.优先队列——priority_queue1.什么是优先队列?2.优先队列的基本使用3.什么是仿函数?4.优先队列的模拟实现 一.双端队列——deque 在上一章stack、queue的模拟实现中,我们…

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码)

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 目录 疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 1.疲劳驾驶检测和识别方法 2.疲劳驾驶数据集 (1)疲…

whistle代理

安装whistle npm install whistle -g --registryhttps://registry.npm.taobao.org启动w2代理 w2 startchrome浏览器安装插件whistle,并启用代理状态 web端代理到本地 浏览器访问http://127.0.0.1:8899/ 配置代理url [参考] https://blog.csdn.net/u010106375/ar…

C语言:程序环境和预处理

编译一个C程序设计很多步骤,大致为预处理,编译,汇编和链接. 在讲解预处理阶段之前,先简单总述一下程序的编译和链接. 1. 程序的编译和链接 链接是将各种代码和数据片段收集并组合成为一个单一文件的过程,这个文件可被加载(复制)到内存并执行. 这里有两个源文件构成了一个程序…

计算机内存中的缓存Cache Memories

这篇写一下计算机系统中的缓存Cache应用场景和实现方式介绍。 Memory hierarchy 在讲缓存之前,首先要了解计算机中的内存结构层次Memory hierarchy。也就是下图金字塔形状的结构。 从上到下,内存层次结构如下: 寄存器:这是计算机…

自动化测试与手工测试比较

既然现在有了自动化测试,甚至现在许多团队在使用人工智能的方法,逐渐让机器来取代人的测试。那么作为测试工程师的人未来会不会消失?这是一个摆在许多人面前的一个严肃的问题。去年刚刚过世的著名的天体物理学家斯蒂芬威廉霍金(Stephen William Hawking…

Qt - macOS 安装配置

文章目录 一、关于 QT1.2 Qt的发展史1.3支持的平台1.4 Qt版本1.5 Qt 的优点1.6 成功案例 二、软件安装1、保证已 Xcode 和 Command Line Tools2、下载 QT3、下载 [qtcreator](http://download.qt.io/official_releases/qtcreator/)查看qt版本 三、创建工程Qt 常见用法 四、基础…

智能安全配电装置应用场景有哪些?

安科瑞 华楠 一、应用背景 电力作为一种清洁能源,给人们带来了舒适、便捷的电气化生活。与此同时,由于使用不当,维护不及时等原因引发的漏电触电和电气火灾事故,也给人们的生命和财产带来了巨大的威胁和损失。 为了防止低压配电…

音频转换工具怎么使用你了解吗?让我来跟你分享背后原理

相信小伙伴们平时都会听听喜欢的音乐放松心情吧,不过你是否遇到过,想在一个播放设备上放一首歌的时候,却发现不支持该格式?音频转换格式软件在我们的生活中扮演着越来越重要的角色。这些软件可以帮助我们将音频文件转换成不同的格…

炒股最好用的5个指标?_通达信公式

摘要: 炒股市场是一个充满挑战的领域,而找到可靠的指标来辅助投资决策是成功的关键之一。在众多的指标中,神奇指标网提供了五个被广泛认为是炒股最好用的指标。本文将详细介绍这五个指标,包括其原理和如何应用它们来辅助投资决策。 导言: …

蓝桥杯专题-真题版含答案-【图形排版】【包子凑数】【位反序数】【自守数】

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 👉关于作者 专注于Android/Unity和各种游…

Java进阶 —— 多进程并发

前言 在系统学完Java的面向对象编程之后,我们需要认真地来学习Java并发编程,我们在学习计算机操作系统的时候也都了解过进程、线程和协程的概念。在这篇文章中荔枝主要会梳理有关线程创建、线程生命周期、同步锁和死锁、线程通信和线程池的知识&#xff…

android app控制ros机器人一

android开发app,进而通过控制ros机器人,记录开发过程 查阅资料: rosjava使用较多,已经开发好的app也有开源的案例 rosjava GitHub https://github.com/ros-autom/RobotCA https://github.com/ROS-Mobile/ROS-Mobile-Android…

因果推断(一)合成控制法(SCM)

因果推断(一)合成控制法(SCM) 在互联网时代,产品迭代速度越来越快,营销活动也越来越多。分析师因此需要快速的量化每次迭代或每次营销的效果,探索改变与结果之间的因果关系,并将优秀…

idea如何解决导入的项目不是Maven工程(文件下面没有蓝色的方格)二

简介: Maven项目导入,idea不识别项目 解决方法: 选中pom.xml -- 右键 -- Add as Maven Project

使用Python搭建代理服务器- 爬虫代理服务器详细指南

搭建一个Python爬虫代理服务器可以让你更方便地管理和使用代理IP。下面是一个详细的教程来帮助你搭建一个简单的Python爬虫代理服务器: 1. 首先,确保你已经安装了Python。你可以在官方网站(https://www.python.org/)下载并安装最新版本的Python。 2. 安…

Spring 中简单存取 Bean 的相关注解

目录 前言存储 Bean 对象五大类注解方法注解(Bean) 获取 Bean 对象 (Autowired)属性注入多个同类型 Bean 注入怎么办? Setter 注入构造方法注入(官方推荐) 前言 之前我们存储获取 Bean 的操作很繁琐,需要将…