“财务审计视角看IT审计”系列文章之一:IT之独立数据核查
日期:2024-02-16 01:35:00   来源:产品展示

  编者按:去年,我们与普华永道合作推出了“内审人需要了解的IT审计”系列文章,获得了读者的广泛好评。今年,在读者的强烈要求下,我们再接再厉,邀请信永中和的同事们一起,共同推出一个新的系列文章——“财务审计视角看IT审计”,希望帮助广大财务专员更好地了解IT审计,在企业数字化转型中做好充足的准备。

  如果说数据是石油,其本身是无价值的,只有对数据深度挖掘,才能为企业业务增长提供新的引擎,形成真正的数据资产。

  近年来,随信息技术飞速的发展,企业信息化建设已经已经由原来的具有较强行业属性特点的系统建设(如ERP)转向为现在的针对数据和业务的管理应用建设(如数据中台、业务中台)。通过建设敏捷、高效、可复用的支撑平台,为业务的数字化创新提供较为可靠的数据和服务支撑。

  IT审计执行的信息系统一般控制、应用控制测试是对企业信息科技领域管控的评价,也是对信息系统基础设施及建立其上的业务流程的控制测试。面对企业业务开展所产生的海量数据,其勾勒出了企业经营活动真实画像,也使得数据核查工作在应对舞弊、异常检验测试方面显得越来越重要。

  IT审计的数据核查大多时候是为财务审计服务的。受限于技术方法,财务审计在进行数据核查时,往往是抽样审计。但面对类似电商、游戏这样的互联网公司所产生的海量销售订单,抽样检查多少个才合适呢?到底是抽100个、1000个还是10000个呢?

  现在,借助于SQL、ClickHouse等大数据分析技术,我们的审计人能对上亿行的数据量进行全量核查和分析。

  例如,对于大型的集团企业,财务审计人员在执行银行流水与财务序时账核对时,一般会采取抽样的方法,仅对大额流水进行全方位检查,但也会耗用大量的人力和时间。在这样的情况下,从IT审计人员的角度来看,若企业开通了银企直联,银行流水与序时账一般会有关联字段,我们大家可以利用SQL进行全量双向核对;如果企业未开通银企直联,或没有关联字段,我们仍然可通过Python按照人工核对的逻辑编写代码,实现网银流水与序时账的全量核对,不再像抽样一样去区分交易金额的大小。

  再如,对于生产工艺复杂的制造型企业,其工序可能多达十几步或者几十步,一般的审计人员难以对生产成本进行重新计算以验证存货计量的准确性。但对于IT审计人员来说,因为这些工序的成本分摊逻辑是一致的,我们可以借助于Python,实现对所有工单的生产成本的归集和分摊,进行全量的重新计算,从而简化或者实现其逻辑验证的目的。一般来说,对于这些收入、成本计算逻辑复杂的企业,利用Python这样的编程语言,复现系统的计算逻辑,往往能取得很好的数据核查效果。

  财务审计在执行分析性程序时,往往使用的数据颗粒度很大,如按年或月的汇总金额去进行波动分析。数据的颗粒度就像一张照片的像素,当颗粒度很大时,照片所呈现的信息将会失真,很多细节信息将难以发现。而IT审计进行数据核查时一般按照最小颗粒度的数据进行多维度分析,如订单信息(价格、销量)、商品类型、时间范围(小时、分钟)、渠道来源、客户分布(地区、年龄)、物流信息等,这是异常检测的基础。

  例如,如上图所示,当我们将某企业的3年的订单按照一天24小时划分为24个区间,分别统计每个小时区间的订单金额时,能发现2019年0点和2020年8点的订单金额显示与规律不符,从而缩小了重点检查的范围,使得审计工作更具针对性。这就是将分析的颗粒度变小的好处:能还原更多的细节信息。

  再例如,如上图所示,我们在对某电商进行审计的过程中,可以按分钟去统计充值次数,去检测是否存在利用机器人等技术短时间大量刷单的情况。

  如上图所示,我们还可以以订单的颗粒度去分析单价的稳定性,对于检测出的发散的或者偏离正态分布的数据,进一步去核查其产生的原因。

  我们将数据核查的对象可以划分为结构化数据和非结构化数据,结构化数据就是能够用数据或者统一的结构加以表示的信息,如信息系统中的各种报表。而非结构化数据,就是一些无法用数字或统一的结构表示的信息,如合同、发票、邮件、网页等。

  现在,IT审计数据核查的对象不再局限于财务账、业务报表等结构化数据,借助于新的IT技术,我们可以将数据核查的范围延伸到非结构化的数据。

  例如,如上图所示,我们在审计一家航运企业的过程中,以前只能通过手工抽样的方式来查询船舶定位位置,并与业务系统中的班期表进行人工核对,来验证航行的真实性。现在我们可通过Python的爬虫技术,批量解析网页中船舶经纬度信息和出发地、目的地,进行全量核对。

  再例如,如上图所示,借助于OCR技术,我们大家可以将非结构化的发票图片文件识别成结构化数据,从而实现发票的全量核查。

  当然,对于不同类型的审计工作,我们数据核查所面对的对象也是不同的。企业数据可以划分为财务数据、业务数据、日志数据三种类型,财务审计在做数据核查时更多核查的是财务数据。而IT审计核查的对象会延伸到业务数据和日志数据。

  从企业舞弊造假成本来说,日志数据业务数据财务数据,因为舞弊者往往会采取造假成本低的方式进行舞弊,所以日志数据和业务数据中保存舞弊线索的可能性最大,所以我们更倾向于通过日志数据、业务数据的核查来验证财务数据的真实性、准确性、完整性。

  例如,如上图所示,我们在审计一家制造型企业的过程中,通过获取公司ERP系统的操作日志,按天对作业频率进行分析,检查作业频率异常偏高的情况,以排查是不是真的存在舞弊迹象。由于操作日志真实反映了人员的所有系统操作,其数据的可信度相比财务数据更高,能更好地反映舞弊欺诈等行为。

  IT审计数据核查需要将IT技术与审计方法相结合。在信息技术飞速发展的浪潮下,我们需要拥抱新技术、新思想、新变革,同时对我们的审计思路、审计模式进行创新。

  例如,我们审计一家游戏企业,玩家通过充值获得游戏币,游戏币可以在商城中购买游戏道具,购买的道具可以自己使用也可以赠送他人。在审计过程中,我们发现一些账号的充值金额异常大,利用Neo4j图数据库将所有道具的赠送关系进行网络分析后发现:

  消费金额前25名的账号中有19个账号相互之间有赠送行为,形成了关系网络。通过进一步审计程序,我们发现其中一些账号不是个人玩家,而是淘宝店家,他们通过从价格更低的渠道充值后,以“赠送”的方式将游戏币卖给游戏玩家,因此其账户的行为特点具有:充值金额较大,且具有大量赠送行为。

  利用Neo4j、Gephi、NetworkX等工具,我们大家可以轻松地进行复杂的网络关系分析,挖掘出数据背后的关联关系,这是新技术为我们数据核查带来的新的手段、新的方法。

  但需要注意的是,IT技术仅仅是一种工具,我们在做数据核查时,更多的是需要和我们的审计方法论结合、和生活常识结合、和行业经验结合、和统计学知识结合。

  例如,IPO的电商企业的数据核查要求我们IT审计对是否存在刷单行为进行分析,从数据分析的工具上讲,我们使用SQL就能进行分析,但我们需要从什么维度去分析才能发现是否存在刷单行为呢?这其实才是数据分析的关键。

  最好的方法就是从生活常识入手,从行业经验入手,我们大家可以去找参与过刷单的朋友,询问他们是如何刷单的,了解其行为特点,然后再据此设计数据分析的维度。

  具体来说,我们通过朋友了解到有的刷单方法是找普通的人去购买,发货的时候只发一个空盒子或者价值较小的重量较轻的东西,完成订单后,再通过微信红包的方式返钱给他。

  针对这种刷单方式,我们就可通过“发货重量轻”的特征去筛选出这些异常订单。我们大家可以根据商品SKU的重量信息,计算出系统里一个订单的重量,再去和物流公司发货时称重重量核对,从而检测出重量偏离较大的异常订单。

  这就是我所说的:在IT审计数据核查的过程中,分析的思路比技术手段更重要。

  我们正处在信息爆炸、技术变革的时代,我们该学习新的IT技术,积极探索新的审计方法、审计思路,通过深入挖掘数据背后的价值,提高我们的审计质量、审计效率。

  涂佳兵,注册会计师,信永中和成都分所信息系统咨询部副经理。《IT审计:用SQL+Python提升工作效率》、《审计效率手册》作者。