渗透测试和软件开发_开发转渗透测试

hacker|
156

开发如何转测试?

1、首先,开发转测试感觉听亏的,开发转测试很容易,反之就很难了, 只要会基本的测试所需知识,一般还是能面试上的,做测试没有开发难。

开发的工作确实是比较累的,很多的公司都是时常加班的,没点能力和体力是不行的。但是已经做技术了,尤其是如果水平还不差,放弃是很可惜的。

2、由于专职测试人员并不参与产品的代码编写,所以给人一种非生产劳动力的感觉,而且大多企业都是用一些编码能力较弱的人去做测试。即便在很多外企中,对测试相对国内会重视一些,对测试人员素质要求也较高,对测试人员培训也较重视,但是并不代表测试人员地位就高,一样是会有开发人员看不起测试的情况。

3、如果要做一名让开发人员佩服的测试人员,

1)编程语言

至少要掌握一门语言,不管是简单的php,java,还是C++也好,或者其他的脚本语言python,perl还是shell也好,至少用一种语言真正的做过一些事情,而且能拿来就用。

2)数据库

至少要掌握一种数据库的DBA,对SQL的操作要熟悉,至少能熟练的运用JOIN进行查询,知道基本的HAVING的用法,如果能写存储过程,并且能优化存储过程那当然更好了,测试人员离不开数据库的管理和数据库的操作。

3)操作系统

作为测试人员,各种操作系统应该很熟悉,系统安装,配置,管理,一个都不能少,对于Linux,至少要对一种系统做过系统管理,熟悉常用的命令行操作,具体要会哪些,建议google一下,用Linux的时候,尽量能用命令行,就不要去点鼠标,因为它不是windows,要改变这样的习惯。能在Linux下能安装和配置软件,最好建议大家自己下载source code,亲自编译,了解make file的原理。

4)扎实的软件测试理论

这是做为测试人员最基本的,不要连开发人员都知道的一些测试方法,测试人员竟然没听过,很多测试人员觉得理论知识都看过,以为自己就了解了,其实做过一段时间之后,再回头去看理论,会有更多的收获,工作多年之后再看测试方面的书籍,发现还是会有不同的收获,理论是实践经验的总结,不能说最好,但是如果说设计测试用例的时候,如果每种方法都有涉及到,肯定会发现用例覆盖率会高,而且容易发现bug。

5)尽量自己分析问题

发现问题了,怎么办?可以找相关的开发人员帮忙分析,但是在发现问题之后,能自己尽量的寻找线索,首先要确定非环境因素,比如检查配置是否全部正确,网络是否有问题等等,然后确定非环境因素后,保护现场,保存记录系统提示信息,如果有日志功能,那自己先根据日志查找一些线索,并把自己检查过的地方和做过的分析信息尽可能多的提供给开发人员,而不是仅仅把错误日志或者错误信息丢给开发人员分析就不管了。

6)多涉猎一些项目之外的知识

不要做一个项目,就两耳不闻窗外事,做测试的就是要涉猎的广,跟开发不同,测试是要能接受任何类型的项目,因为测试是一门方法学,方法学是不受某个产品或者领域限制的,但是如果对其他领域也了解的多,对做测试是有帮助的,前沿技术也要了解一些。

7)掌握一些安全方面的知识

往往系统安全是很重要的,如果能提出一些系统安全方面的漏洞,那别人自然会觉得你考虑的比较全面,至于安全方面需要哪些知识,首先从网络安全入手,了解一些密码学方面的知识,比如了解常用的加密算法原理,比如报文加密传输协议原理,建议看一下hash的方法,这个简单容易理解,还比较容易举一反三。

8)提高沟通能力,懂得尊重开发人员

测试人员要面对的人员很多,客户,项目经理,开发人员,产品经理等,有时候会全部都接触的到,那么沉默就不一定是金,有良好正确的沟通能力,会帮助测试人员提高在其他人心目中的好印象,沟通不是能说就行,要正确的沟通,高效的沟通,就是能用最简洁的语言把事情描述清楚,沟通的好,人缘就会好,就自然会受到大家的欢迎,其他人也愿意合作,千万不要在背后评论开发人员,即使评论,也评论别人的优点有哪些值得学习,懂得尊重开发人员,即使说技术比别人强,懂得尊重别人的人才能被别人尊重。

9)不要自己把自己的地位降低

很多测试人员觉得自己做的测试工作本身就没有技术含量,觉得自己的工作创造的价值少,没有挑战性,其实如果连自己都看不起自己,那如何让别人看得起呢。

总之,做测试,是一门技术,也是一门艺术。

一般开发新系统做渗透测试,会在哪个阶段和环境上进行

[摘 要]在分析会计电算化对内部控制的影响的基础上,探讨了电算化会计信息系统环境下的内部控制建设问题,以确保企业在实行会计电算化后,系统能够正常、安全、有效地运行。 [关键词]会计电算化;会计信息系统;内部控制 在飞速发展的信息社会中,计算机的运用已渗透到各个领域。会计电算化是以电子计算机为主的当代电子技术和信息技术应用到会计实务中的简称,它是一个用电子计算机代替人工,实现记账、算账、报账、查账并替代部分需由人脑完成的对会计信息(数据)的统计、分析、判断乃至提供决策的过程。会计电算化是会计发展史上的又一次重大革命,它不仅是会计发展的需要,而且是经济和科技发展对会计工作提出的要求,是时代发展的要求。内部控制是组织为保护其资产安全、保证信息的完整和正确、促进经营管理政策得以有效实施、提高经营效率、控制经营风险、防止舞弊行为发生进而实现组织目标的一项重要的管理制度与方法。近年来,我国十分重视对内部控制的研究,并发布了一系列规范和指导意见,促进了企事业单位内部控制的建立和完善。随着it技术特别是网络技术的发展和应用,电算化会计信息系统进一步向深层次发展,这些变革无疑给企业带来了巨大的效益,但同时也给内部控制带来了新的问题和挑战。 一、会计信息系统内部控制 由于会计工作组织或业务实施等方面的原因,导致会计信息失真、不合理、不合法等一系列的控制问题。各级管理部门为了保护国家和企业的财产完整与安全,确保会计及其他数据的可靠,保证国家及企业的各项方针政策的贯彻与执行,为提高经济效益所采取的一切制度、方法措施和管理程序,均属于会计内部控制的范畴。任何一家企业、事业单位或其他经济组织,不论其规模大小和业务性质,也不论其采取何种会计工作组织程序和信息处理方式,在其会计业务处理系统中,总是不同程度、不同方面地存在着一定的系统内部控制问题。企业的会计信息系统内部控制问题是企业整个管理体系中的重要组成部分。 二、电算化会计信息系统的产生和发展对内部控制的影响 从传统的手工会计到会计电算化系统,系统内部控制的基本要求和目标没有变,仍然是保证资产的安全性、数据资料的准确性和可靠性,提高经营效率,以及保证管理方针的实现;会计核算的复式记账和借贷平衡的基本原理和方法也没有变。但由于会计信息处理方式和方法的计算机自动化,使得会计业务处理程序和工作组织发生了质的变化,由此引发会计信息系统内部控制体系也出现了一些新的特点[2]。 (一)内部控制形式的变化 原手工操作环境下的一些内部控制措施在电算化后不再有必要存在。如编制科目汇总表、凭证汇总表,试算平衡的检查、总账和明细账的核对。还有一些手工操作下的内部控制措施在电算化后转移到计算机内了,如凭证借贷平衡校验、余额发生额平衡检查。在电算化环境下,除了人这个执行控制的主体外,许多内部控制方法主要通过会计软件来实现。因此,计算机系统的内部控制也由单一人工控制转为人工和程序共同控制。由于电算化系统中内部控制具有人工控制与程序控制相结合的特点,电算化系统许多应用程序中包含了内部控制功能,这些程序化的内部控制的有效性取决于应用程序,如程序发生差错或不起作用,由于人们的依赖性以及程序运动的重复性,使得失效控制长期不被发现,从而使系统在特定方面发生错误或违规行为的可能性较大。 (二)存储介质的变化 在手工会计环境下,企业的经济业务发生均记录于纸张之上,并按会计数据处理的不同过程分为原始凭证、记账凭证、会计账簿和会计报表。纸张上的书面数据形成会计人员所熟悉的会计证据原件,这些纸质原件的数据若被修改,很容易找出修改的线索和痕迹,这是传统纸质原件的一个基本特征。但是,电算化系统下,原来纸质的会计数据被直接记录到磁盘或光盘上,很容易被删除或篡改,由于在技术上对电子数据非法修改可做到不留痕迹,这就很难辨别哪一个是业务记录的“原件”。另外,电磁介质易受损坏,所以会计信息也存在丢失或毁坏的危险。因此,如何使磁性介质上的数据安全可靠、防止数据被非法修改是一个非常重要的问题。 (三)内部控制的范围变化 传统的内部控制主要针对交易处理。计算机技术的引入,给会计工作增加了新的工作内容,同时也增加了新的控制措施。由于系统建立和运行的复杂性,内部控制的范围相应扩大,包含了传统手工系统所没有的控制,如网络系统安全的控制、系统权限的控制、修改程序的控制等,以及磁盘内会计信息安全保护、计算机病毒防治、计算机操作管理、系统管理员和系统维护人员的岗位责任制度等。 (四)交易授权的变化 授权、批准控制是一种常见的、基础的内部控制。在手工会计系统中,一项经济业务的每个环节都要经过某些拥有相应权限的人员的签章,自然形成了层层复核、道道把关的严格的审核复查机制。但在电算化会计信息系统中,大部分处理由计算机完成,审查、复核等控制被削弱甚至取消了。 (五)财务网络化带来的新问题 近年来,随着计算机技术和网络通讯技术的发展,网络化会计信息系统日趋普及。网络的广泛应用在很大程度上弥补了单机电算化系统的不足,使电算化会计系统的内部控制更加完善,同时也带来了新问题。目前财务软件的网络功能主要包括远程报账、远程报表、远程审计、网上支付、网上催账、网上报税、网上采购、网上销售、网上银行等,实现这些功能就必须有相应的控制,从而加大了会计系统安全控制的难度。 从以上分析可以看出,会计电算化使系统内部控制体系出现了一系列变化,计算机会计系统的内部控制是范围大、控制程序复杂的综合性控制,控制的重点为职能部门和计算机数据处理部门并重的全面控制,是人工控制和计算机自动控制相结合的多方位控制。就目前我国会计电算化的应用现状来看,大部分还停留在一般应用水平上,人们对于人员职责分工、数据备份和保管、软硬件使用和维护等方面的重要性往往认识不足。因此,强化内控管理、提高电算化的科学管理水平是建立现代企业制度的内在要求,也是提高企业竞争能力的重要途径。 三、建立和完善电算化会计信息系统环境下的内部控制 建立和完善会计电算化内部控制的基本思路为:坚持明确分工、相互独立、互相牵制、相互制约的安全管理原则,建立系统的人工与机器相结合的控制机制,使会计电算化运行的每一个过程都处于严密控制之中。 (一)系统开发和维护控制 1.系统开发控制 它是一种预防性控制,目的是确保财务系统开发过程及内容符合内部控制的要求。财务软件的开发必须遵循国家有关机关和部门制订的标准和规范。在财务系统开发之初,要进行详细的可行性研究;在系统开发过程中,内审和风险管理人员要参与系统控制功能的研究与设计,制订有效的内部控制方案并在系统中实施;在系统测试运行阶段,要加强管理与监督,严格按照《商品化会计核算软件评审规则》等标准进行;在系统运行前要对有关人员进行培训,不仅培训系统的操作,还要使受训人员了解系统投入运行后新的内部控制制度和对财务提供的高质量会计信息的进一步分析与利用等;此外,应及时做好新旧系统转换。企业应在系统转换之际采取有效的控制手段,做好各项转换的准备工作,如旧系统的结算、汇总,人员的重新配置,新系统初始数据的安全导入等。 2.系统维护控制 系统维护包括软件修改、代码结构修改和计算机硬件与通讯设备的维修等,涉及到系统功能的调整、扩充和完善[3]。对财务系统进行维护必须经过周密计划和严格记录,维护过程的每一环节都应设置必要的控制,维护的原因和性质必须有书面形式的报告,经批准后才能实施修改。软件修改尤为重要,系统操作员不能参与软件的修改,所有与系统维护有关的记录都应打印后存档。 (二)电算化会计信息系统的安全控制 电算化会计信息系统的安全控制,是指采用各种方法保护数据和计算机程序,以防止数据泄密、被更改或破坏,主要包括实体安全控制、硬件安全控制、软件安全控制、网络安全控制和病毒的防范与控制等。 1.实体安全控制 实体安全涉及到计算机主机房的环境和各种技术安全要求、光和磁介质等数据存贮体的存放和保护,是一种预防性控制。计算机机房应该符合技术要求和安全要求,充分满足防火、防水、防潮、防盗、恒温等技术条件;机房应配有空调和消防设置等;对用于数据备份的磁盘、光盘等存贮介质应注意防潮、防尘和防磁;对每天的业务数据双备份,建立目录清单异地存放;长期保存的磁介质存贮媒体应定期转贮。计算机会计系统有关的资料应及时存档,企业应建立起完善的档案制度,加强档案管理。一个合理完善的档案管理制度一般有合格的档案管理人员、完善的资料借用和归还手续、完善的标签和索引方法、安全可靠的档案保管设备等。除此之外,还应定期对所有档案进行备份并保管好这些备份。为防止档案被破坏,企业应制订出档案被破坏的事件发生时的应急措施和恢复手段,企业使用的会计软件也应具有强制备份的功能和一旦系统崩溃及时恢复到最近状态的功能,网络中利用两人服务器进行双机镜像映射备份是备份的先进形式。 2.硬件安全控制 计算机会计信息系统的可靠运行主要依赖硬件设备,因此硬件设备的质量必须有充分保证。为防万一,关键性的硬件设备可采用双系统备份。此外,机房内用于动力、照明的供电线路应与计算机系统的供电线路分开,配置ups(不间断电源)、防辐射和防电磁波干扰设备等。 3.软件安全控制 首先,应分析研究各应用软件的兼容性、统一性,使各业务系统成为基于同一种操作系统平台的大系统,各种业务之间能相互衔接,相关数据能够自动核对、校验,数据备份应统一完成。其次,系统软件应尽量减少人机对话窗口,必要的窗口如凭证输入窗口应力求界面友好、防错能力强,做到非正确输入不接受。再次,要增强系统软件的现场保护和自动跟踪能力,可以对一切非正常操作进行记录。 4.网络安全控制 随着网络技术的快速发展,公司应加强网络安全的控制,设置网络安全性指标,包括数据保密、访问控制、身份识别等,并且针对公司的特定状况,开发相应的技术来保护系统[4]。网络对会计信息系统的安全性提出了比单机系统更高的要求,需加强以下两个方面的控制:一是用户权限设置,应从业务范围出发,将整个网络系统分级管理,设置系统管理员、数据录入员、数据管理员和专职会计员等岗位,层层负责,对各种数据的读、写、修改权限进行严格限制,把各项业务的授权、执行、记录以及资产保管等职能授予不同岗位的用户,并赋予不同的操作权限,拒绝其他用户的访问;二是密码设置,用户应按照自己的用户身份和密码进入系统,对密码进行分组管理,对存储在网络上的重要数据进行有效加密,在网络中传播数据前对相关数据进行加密,接收到数据后再进行相应的解密处理,并定期更新加密密码。 5.病毒的防范和控制 防范病毒最为有效的措施是加强安全教育,健全并严格执行防范病毒管理制度[3]。对不需要本地硬盘和软盘的工作站,尽量采用无盘工作。要采用基于服务器的网络杀毒软件进行实时监控、追踪病毒;在网络服务上采用防病毒卡或芯片等硬件,以有效防治病毒。财务软件可挂接或捆绑第三方反病毒软件,加强软件自身的防病毒能力。对外来软件和传输来的数据必须经过病毒检查,在业务系统中严禁使用游戏软件。此外,应及时升级系统的防病毒产品。 (三)电算化会计信息系统的人员职能控制 利用计算机舞弊的犯罪分子大多是企业的程序员兼计算机操作员。会计电算化所要求的完善的人员职能控制制度就是适当分工,明确规定每个岗位的职责,以防止对处理过程的不适当干预。会计电算化后的工作岗位可分为基本会计岗位和电算化会计岗位,基本会计岗位可包括会计主管、出纳、会计核算各岗及稽核、会计档案管理等工作岗位;电算化会计岗位包括直接管理、操作、维修计算机及会计软件系统等工作岗位。机构调整必须同组织控制相结合,以实现职权分离,有效地限制和及时发现错误或违法行为,如规定系统开发人员和维护人员不能兼任系统操作员和管理人员等,以减少利用计算机舞弊的可能性。 (四)电算化会计信息系统的操作控制 企业用于计算机会计系统的计算机应尽可能是专用的,企业应对计算机的使用建立一整套管理制度,以保证每一个工作人员和每一台计算机都只做其应该做的事情。一般来讲,企业对用于计算机会计系统的计算机的上机管理措施应包括轮流值班制度、上机记录制度、完善的操作手册和上机时间安排等。此外,会计电算化操作应严格遵照会计业务和处理流程进行,在会计软件中设置防止重复操作、遗漏操作和误操作的控制程序,违反操作规程和操作时间应及时予以提示和制止,建立操作日志制度。计算机程序中应对所有操作留有记录,包括操作时间、操作人员姓名、操作内容等。对已记账和已结账业务设置不可修改或逆操作程序,要修改必须通过编制记账凭证冲正或补充登记来更正,以保证会计数据的完整性、真实性。操作控制包括经济业务发生控制、数据输入控制、数据通讯控制、数据处理控制、数据输出控制和数据储存控制等[5]。 1.业务发生控制 业务发生控制又称“程序检查”,主要目的是采用相应的控制程序甄别、拒纳各种无效的、不合理的及不完整的经济业务。在经济业务发生时,通过计算机的控制程序,对业务发生的合理性、合法性和完整性进行检查和控制,如表示业务发生的有关字符、代码等是否有效,操作口令是否准确,经济业务是否超出了合理的数量、价格等变动范围。企业还应建立有效的控制制度以保证计算机的控制程序能正常运行。 2.数据输入控制 计算机处理数据的能力很强,处理速度非常快,如果输入的数据不准确,处理结果就会出现差错。在数据输入时,哪怕是很小的错误数据,一旦输入计算机就可能导致错误的扩大化,影响整个计算机会计系统的正常运行。因此,企业应该建立起一整套内部控制制度,以便对输入的数据进行严格的控制,保证数据输入的准确性。数据输入控制首先要求输入的数据必须经过必要的授权,并经有关的内部控制部门检查;其次,要采用各种技术手段对输入数据的准确性进行校验,如总数控制校验、平衡校验、数据类型校验、重复输入校验等。 3.数据通讯控制 数据通讯控制是企业为了防止数据在传输过程中发生错误、丢失、泄密等事故的发生而采取的内部控制措施。企业应该采用各种技术手段以保证数据在传输过程中的准确、安全、可靠。如将大量的经济业务划分成小批量传输,数据传输时应按顺序编码,传输时要有发送和接收的标识,收到被传输的数据时要有肯定确认的信息反馈,每批数据传输时要有时间、日期记号等等。 4.数据处理控制 数据处理控制是指对计算机会计系统数据处理的有效性和可靠性进行的控制。数据处理控制分为有效性控制和文件控制。有效性控制包括数字的核对,对字段、记录的长度检查,对代码和数值有效范围的检查,记录总数的检查等。文件检查包括检查文件长度、检查文件的标识、检查文件是否被感染病毒等。 5.数据输出控制 数据输出控制是企业为了保证输出信息的准确、可靠而采取的各种控制措施。输出数据控制一般应检查输出数据是否与输入数据相一致,输出数据是否完整,输出数据是否能满足使用部门的需要,数据的发送对象、份数应有明确的规定,要建立标准化的报告编号及收发、保管工作等。 6.数据存储和检索控制 为了确保计算机会计系统产生的数据和信息被适当地储存,便于调用、更新和检索,企业应当对储存数据的各种磁盘或光盘作好必要的标号,文件的修改、更新等操作都应附有修改通知书、更新通知书等书面授权证明,对整个修改更新过程都应作好登记。计算机会计系统应具有必要的自动记录能力,以便业务人员或审计人员查询或跟踪检查。 (五)电算化会计信息系统的内部审计 内部审计既是公司、企业内部控制系统的重要组成部分,也是强化内部会计监督的制度安排。在会计电算化中,由于是“人机”对话的特殊形态,因而对内部审计提出了更高、更严格的要求。笔者认为,内部审计必须包括以下几个方面:(1)对会计资料定期进行审计,检查电算化会计账务处理是否正确,是否遵照《会计法》及有关法律、法规的规定,审核费用签字是否符合公司内控制度、凭证附件是否规范完整;(2)审查机内数据与书面资料的一致性,如查看账册内容,做到账表相符,对不妥或错误的账表处理应及时调整;(3)监督数据保存方式的安全、合法性,防止发生非法修改历史数据的现象;(4)对系统运行各环节进行审查,防止存在漏洞。 随着电子技术的飞速发展和电算化会计信息系统的普及运用,内部会计控制制度中的新问题和新课题将不断出现。对其深入研究,必将形成新的会计理论和方法。而新的会计理论和方法的确立,又将使电算化会计在新的基础上获得进一步完善和发展,也使得电算化会计信息系统的内部控制制度得以不断地调整、改善,真正做到保证会计数据的可靠性和真实性,提高企业的经济效益。 [参考文献] [1] 李立志.会计信息系统内部控制特点的演变[eb ol].http: new,20031003. [2] 杨蕙璇.会计电算化对内部控制的影响[eb ol].http: new,20031003. [3] 鲜军.互联网下会计电算化内部控制研究[eb ol].http: new,20031103. [4] 张辉.建立顺应会计电算化发展的内部控制制度[eb ol].http: new,20040204. [5] 朱建国.试论电算化会计系统的内部控制[eb ol].http: new,20020620.

软件开发后需要做渗透测试吗

需要

软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。

0条大神的评论

发表评论