简体版|繁体版
无障碍
当前位置:首页 > 审计之窗 > 经验交流

双向数据分析框架在民生审计中的应用

2024-05-30 15:00     来源:江苏省无锡市审计局 朱琢     作者:江苏省无锡市审计局 朱琢
收藏 我要收藏 公共资源调用站点 文章分享
分享 微信
头条
微博 空间 qq
【字体: 打印

近年来,民生资金管理信息化水平逐步提升,各类信息系统不断迭代,系统开发集成化、业务办理网络化成为主要趋势。

随着审计频次的增加和审计事项的深入,江苏省无锡市审计局针对民生资金信息化管理特点,总结近年来民生数据审计经验,基于信息化业务管理系统探索,形成了民生审计中的双向数据分析框架。

该框架融合了传统审计数据分析和业务信息系统开发特点,既从审计方案出发层层落实推进,又兼顾审计对象业务应用关键节点的功能性漏洞,实现业务数据支撑审计、业务系统引导审计,进一步打开了民生审计思路,全面提升民生审计绩效。

本文重点阐述双向数据分析框架的应用模式,并以养老服务体系建设政策落实情况审计项目为例,介绍该方法的具体实践成效,以期为做好民生审计工作提供助力。

双向数据分析框架概述

(一)框架概念

双向数据分析框架是集数据分析、系统分析、业务分析和风险分析于一体,将面向审计方案的切片式数据分析与面向业务系统功能的漏洞分析相结合的数据分析模式,其从两个不同维度拓展审计思路,强化审计数据动态分析。

面向审计方案的切片式数据分析是传统的多维审计数据分析方法,即将审计需求以代码建模的方式注入业务数据分析,如在民生审计过程中需要以数据切片的形式实现目标数据的最小化,提升实际分析效率。

面向业务系统功能的漏洞分析是以关键业务节点系统控制为抓手,挖掘系统缺陷到业务损失之间逻辑关系的数据分析理念。

在实践中,审计组将特定系统功能的控制逻辑融入民生数据分析过程,评估该功能实际操作的合理性和合规性。

根据系统功能异常特征,识别是否存在人为利用系统功能漏洞造成民生资金损失或侵害人民群众利益的行为。

(二)技术功能

自2017年起,无锡市审计局在社保和医保基金运行情况审计、困难群众救助补助资金审计等多个民生审计项目中,使用并完善双向数据分析框架。其与多维分析、异常判别、趋势研判等技术手段共同组成了系统化民生审计数据分析模式。

面向审计方案的切片式数据分析主要使用SQL和Python等技术对业务数据库进行切片,并按照政策法规标准进行数据关联比对。其中,以结构化数据为主、非结构化数据为辅,通过适当引入关联数据降低数据的拟合性。

面向业务系统功能的漏洞分析主要依靠查阅开发文档、控制功能测试和逆向工程三种手段。查阅开发文档,需要审计人员掌握足够多的软件工程知识,对特定业务功能的设计进行评估。

控制功能测试是借助黑箱测试原理分析核心业务功能的审批流程,并使用Selenium、Postman、BurpSuite等工具,验证功能程序是否按预期工作,追踪问题操作的数据固化位置,定位风险点。

逆向工程是对重点功能模块和疑点程序使用.NETReflector、Luyten、jadx等软件进行反编译,从核心控制方法的传参、判断、异常处理等方面定位漏洞。

通过双向数据分析框架,审计人员可以重点分析民生相关资金使用和发放的准确性和及时性,进一步关注民生资金信息化管理的长效性和政策执行中的操作风险,堵住民生领域业务信息化审核关键节点的漏洞,促进完善相关民生信息系统。

应用案例:养老援助服务覆盖面分析

(一)审计背景

在2022年H市养老服务体系建设政策落实情况审计项目中,无锡市审计局执行了业务主审和数据主审双主审制。

业务主审按照审计实施方案选择财政资金投入较大的老年人援助服务作为审计重点之一,数据主审遵循“总体分析、发现疑点、分散核实、系统研究”的数字化审计模式,运用双向数据分析框架,分析老年人援助服务开展的全面性和准确性。

一直以来,H市按照《“十四五”国家老龄事业发展和养老服务体系规划》要求,对重点老年人,即困难老人、失能老人和独居老人,提供居家援助服务,包括上门护理、康复诊疗、生活照料、心理护理、营养膳食、家庭清洁等。

服务单位由政府采购确定,费用由县、区财政保障。中标的援助服务公司每半年调整一次服务派单。每年市级部门对县、区相关部门按照援助覆盖面进行考核。

(二)前期准备

H市各区使用重点老年人综合信息管理系统对各类享受养老政策的老年人进行登记管理。各街道负责老年人援助服务事项的认定,由县、区民政局汇总后,统一安排中标服务公司提供上门服务。

数据分析的数据来源于重点老年人综合信息管理系统中的重点老年人认定数据和援助服务公司业务管理系统中的上门援助打卡明细。

数据主审聚焦重点老年人综合信息管理系统中居家援助服务对象的认定审批和变更模块,向系统开发运维单位收集相关的开发文档、系统测试权限和相关源代码。

(三)数据分析方法

一方面,对援助服务派单调整时居家援助的覆盖面和结算金额进行关联比对。首先,获取H市相关业务系统后台数据库中的数据,以BAK形式导出重点老年人综合信息管理系统数据,以DMP形式导出援助服务公司实际派单数据和费用结算数据。其次,按6月和12月两个派工调整时点对在库重点老年人对象认定数据进行切片,形成两张中间表,并通过Navicat将切片数据转换至Oracle数据库中。最后,通过身份证号码将重点老年人数据、实际上门援助打卡数据和半年度服务结算数据进行关联比对,判断老年人是否应享尽享援助服务,服务次数是否符合标准,结算费用与服务发生次数是否一致。

另一方面,分析H市重点老年人综合信息管理系统的软件架构是否存在逻辑功能漏洞。一是分析开发语言环境,根据系统开发使用的Spring Boot框架,选择适合Java的测试工具。二是查阅开发技术文档和用户使用手册,了解对象认定管理功能、变更操作方法。结合业务流程,厘清业务数据流向和业务数据的存放地址。三是对重点老年人认定变更操作的前端提交进行重复性测试,发现网页端变更操作缺乏必要审批和次数限制。如系统操作人员可以在短时间内反复提交变更申请,系统均显示变更成功。四是反编译系统后端服务器Controller类的实现方法,解读请求响应流程中的判断、等待、异常的抛出和处理代码,分析每行代码的实际功能。从开发源代码中确认是否可以多次随意变更重点老年人的身份属性,是否可以通过ORM框架Spring Data直接将变更后的数据写入数据库,完成数据库的update操作。

根据系统中的变更功能和控制类实现,审计组发现重点老年人的属性更新在系统设计开发方面存在逻辑漏洞,能够随意变更在库老年人的分类属性。为了核实系统漏洞造成的实际影响规模,审计组从援助服务打卡数据着手进行验证。

一是分析在库重点老年人数量的增减变化趋势,比较半年度援助服务对象时点数和当年度其他月份重点老年人登记数,用差分法测算实际享受援助服务对象的基数缺失。二是从重点老年人的年末在库数据着手,分析近三年重点老年人数据变化的平稳性,排除数据起伏变化带来的影响。

(四)双向数据分析成效

在此次审计中,面向审计方案的切片式数据分析方式没有发现重点老年人援助服务应享未享和费用结算不符合标准的问题。

但通过分析面向业务系统的功能漏洞,发现信息系统存在变更缺乏审批限制的漏洞和实际享受援助服务人数的周期性缺失等问题,进一步揭示某工作人员利用重点老年人综合信息管理系统中的变更漏洞,在年中服务派单前随意变更重点老年人属性信息,人为降低享受援助服务的重点老年人数量,减少援助服务的预算支出,侵犯重点老年人享受养老政策的权益。

经核实,2021年H市有上百名重点老年人未能享受到居家援助服务。

应用成效

双向数据分析框架丰富了传统审计数据分析模式,尤其契合政务信息化的发展趋势。面向系统功能的审计角度,依托软件开发测试等技术手段,开拓了审计问题定位思路,对于多类型民生审计项目和定期反复实施的审计项目均可适用。

即使审计对象将核心业务数据人为篡改或者批量清洗,该框架仍然能够帮助审计人员挖掘疑点线索。

对于微信小程序或者手机APP办理的民生业务,双向数据分析框架能够分析网络通信请求和响应之间的一致性,定位网络欺骗和通信漏洞,帮助审计人员发现各类在线骗取资金的问题线索,赋能社保、医保、公积金、创业补贴等民生审计项目,推动提升审计成效。


文件下载:

关联文件: