计算机专业实习报告

句文网    发表于:2022-12-07 15:22:41

第1篇:计算机专业实习报告

一、工作内容

这学期跟李锡捷老师实习,参加的工作项目是信息安全组,因为平时较其它三位组员多接触UNIX-Like的环境,因此成为本组组长并协助联络事情。我们期初一开始便有正式的case接手,是一个韩国的骇客教育机构Hackerslab委托翻译他们的一份骇客教材。

对于这方面,我们四人虽然很有兴趣,但是相关的技术背景都还嫌不够,因此做起来并不是很轻松,最常遇到的问题就是专业名词的查询与翻译,常常会有不知如何是好的窘境发生,幸好系上的学长大多能提供我们一些查询的方向,大部分的问题到最后还是能顺利完成,这样初期的翻译工作大约持续了一个多月后暂时结束。对外的case完成后,我们继续朝着信息安全相关的方向研究,主要是针对两个程序进行改进工作,一个为测试系统漏洞的Nessus,一个为侦测入侵系统Snort,至此小组里再以两人一组细分为Nessus组跟Snort组,各自进行测试工作。我所分配的是Nessus组,这是一种可以用来测试服务器有哪些网络漏洞的程序,由于采用Plug-ins的方式安装,因此可以随时安插新漏洞的测试Plug-ins,加上Nessus总部的CVS机制,只要你的Nessus系统有定期CVS更新,就能保持最新的完整漏洞测试。

在业界杂志的评比里Nessus的评价甚至超越许多商用软件(Nessus是免费的),但是他有个小缺点,就是有关漏洞测试报告的部分作的并不是十分完整,每支漏洞的测试回报完整与否,取决于Plug-ins作者是否有在写作Plug-ins加上完整的叙述与解决方案,问题是大部分的Plug-ins都只有程序代码,并没有对叙述及解决方式作批注说明,因此即使在使用Nessus测出系统的安全漏洞后,使用者必须在到网络上搜寻解决方法,这样作实在不是很便利,因此老师希望我们能对于Nessus的测试回报部分作改良,写出一个报告阅读程序,结合庞大的信息安全信息,让使用者能在检测出漏洞的同时,直接取得相关的信息和解决方案,便利系统管理者在改善本身系统安全的时效性。

二、学习

FreeHackersZone这学期最早接触的学习环境,应该要算Hackerslab提供的一个骇客练习用工作站FreeHackerZone。这是一台用Linux架起来的工作站,里面分将使用者分作level0到level14,每取得下依个等级的使用者权限,都有一个相对应的系统漏洞需要去破解,训练使用者在实作中了解骇客破解系统的方法,我一面翻该组织的FAQ,一面尝试错误,让我一路攻到level10,其中学习到的手法包括了使用者权限设定,寻找特定权限的档案,利用系统分隔符来欺骗系统,溢位攻击等等,然而在前进level11时,因为该漏洞必须自韩国本地进行破解,因此只好作罢,没能进一步继续。不过这个经验对于后来翻译Hackerslab的文件有的不少的助益!

2.HackersLab教材翻译经过这段暖身后,我们正式接下Hackerslab文件翻译的工作,我负责的是Sniff(监听)与网页安全两份教材。在以太网络上,只要是同一个lan上的机器,都能收到在lan上传送的封包,系统核心会进行比对,如果该封包是属于自己的就继续处理,如果不是就忽略掉,而sniffing原理就是改变最后的步骤,将所有经过的封包,不管是否属于自己,全部抓进来记录。Sniffing的正面意义应该是用于处理观察网络流量状况,一旦网络出现异常时,可以藉由Sniffing来观察有哪些异常封包,帮助排除异常状况。至于窃取传送中的使用者账号跟密码,则是cracker的行为,这并非Sniffing的本意。对于区网内要如何避免被Sniff,最简单是在该区网内使用switchhub。

跟hub不同的是,hub会将接收到的封包向所有连接的host传送出去,但switch本身具有MAC路由表的功能,可以记得哪一个MAC地址要从哪一个连接埠送出去,因此不会让不相关的host收到该封包,大大减少了被Sniff撷取封包的机会。另外一种作法是对于传送的封包均作加密处理,这样就算被他人撷取到封包,对方也很难将封包解密而还原成原本的样字加以解读。常见的加密方式例如:SSL(SecureSocketLayer)、PGP(PrettyGoodPrivacy)、SSH(SecureShell)、VPN(VirtualPrivateNetwork)等等。Sniff完最重要的工作是分析抓到的封包,因此这里对于各种通讯协议的封包意义大致讲解过一遍,例如该封包的来源与目的地,长度,数据内容,CRC检查码等等。另外一个章节是有关网页安全,包含了浏览器跟服务器两部分,这里大多是讲述理论性质的部分。首先是有关网页服务器,对于crack的问题,最重要的还是管理者(administrator)的认知问题,只要对系统的安全性随时保持警觉,绝对能防止crack事件的发生。目前有关网络上的服务应用虽然对于ftp或e-mail,都有许多独立的应用程序可以利用(如cute-ftp或outlook),但现在一般上网的使用者,仍有许多的机会直接使用网页来对ftp做存取跟收发e-mail,此外还有许许多多功能,也都被整合在网页浏览中,当网页服务器要兼任的服务越多,也就提供了更多让cracker入侵的机会,这是发展网页功能的同时必须付出的代价,因此,身为一个网页服务器的管理员,有责任负起保护自己服务器使用者的权益,对于安全性一定要随时保持高度的警觉性。尤其随着电子商务的发展,网页扮演的角色越来越吃重,在往夜间传递使用者信息的机会越来越多,更增加了安全性的顾虑,然而使用者多半对于这方面安全性问题不够警觉(甚至不了解严重性),只要有cracker使用一些恶意或欺骗的applet或scripts,就有可能将使用者的信息窃取到手,也可以自远程将使用者的计算机加以控制甚至令其当机,使用者对于浏览网页时的安全比必须要比过去更加留意。常见的网页攻击模式包括:溢位攻击(bufferoverflow):顾名思义,就是利用bufferoverflow的原理达成目的的......比如,一个数组只有100bytes,但我喂给它200bytes的数据,于是这个数组装不下这些数据,造成了overflow......为什么overflow会有securityhole呢?首先,overflow发生时,多出来的数据会盖到其它变量上,相信这一点大家早就知道了。问题是,为什么数据盖到其它变量上时,顶多使程序执行错误,会严重到出现security的问题吗?这时,好玩的事情就发生了.......当我们呼叫一个function时,以汇编语言的观点,会将returnaddress堆入stack中。如果这个function宣告了一些local变量,那进入这个function之后,会在stack中再空出一块区域给这些local变量,当要从这个functionreturn回去时,就把这些在stack中的local变数清掉。现在好了,bufferoverflowsecurityhole就是在这里发生了......

如果有某个function宣告了一个localarray,如:intfunc(){inti,j,k;charbuf[16];structabc*x,*y,*z;...}这样就很明显了,如果在这个function内有了bug,忘记去控制数据喂给buf的长度,当数据喂长一点,就可以盖到这个function的returnaddress指到自己所喂进去的code上这时,function执行完毕,要return时,它就不会return到原来呼叫它的地方,而会“return”到我所喂进去的那些code,这么一来入侵者就可以为所欲为了!DenialofService(DoS,阻断服务攻击):所谓阻断服务攻击,是攻击者利用受害者的操作系统、网络应用程序(服务)或网络通讯协议的漏洞来攻击受害者,促使目标主机的系统或服务发生瘫痪的情况,可能造成系统资源耗尽、引响正常联机品质、网络频宽被占满、网络应用程序(服务)停止运作、系统当机等情形,使正当的使用者无法正常使用该主机所提供的服务。另一种情况是系统管理者为了测试目的尝试对自己主机展开攻击,测试操作系统或是网络应用程序(服务)中是否含有可能被攻击的漏洞存在。像立骇科技(HackersLab)的入侵测试(PenetrationTest)、卫道科技的网络安全漏空扫瞄仪(NAICyberCopScanner)都可针对企业内的操作系统、网络甚至数据库做健康检查,其它DoS的`攻击都是不合法的,而且动机通常出自恶意。DistributedDenialofService(DDoS,分布式阻断服务攻击):所谓分布式阻断服务攻击,是运用在于受害者的系统资源、网络频宽条件都比攻击者来的好,如果攻击者想一对一的攻击被害者,可能会失败甚至导致自己的系统或网络瘫痪,所以采取一对多的攻击方式,攻击者先在一些防备较弱的主机中种植攻击程序。随后攻击者对各主机中的的攻击程序发出攻击命令,要求对目标主机发出庞大数量且多种的封包,庞大的数据量会瘫痪目标主机而使得无法正常提供服务。

DDoS不但可以提高成功率,还可以缩短攻击的时间及减少被发现的机会。※以目前骇客的行径而言,大多比较倾向于使用威力强大的DDoS攻击,尤其是针对规模大的网站时。CGI:一种让网页执行外部程序的一种接口,正因为如此,只要权限或设定有问题,或程序编写有问题,很容易成为cracker入侵系统的快捷方式。自动目录列表:取得网页跟目录下的档案列表将使得cracker清楚知道该网站结构,很容易便能发觉后门所在甚至下载有问题的程序代码回去破解分析,对于入侵更为容易使用者认证的攻击:利用一账号文件跟密码字典文件的配合,强制通过网页认证的一种手法。

NessusNessus官方网站,目前最新释出的版本为1.0.8,是一种用来侦测网络服务器或工作站的网络漏洞的工具。这套侦测系统是Client-Server的方式运作,服务器端包括了使用者账号的管理以及各种漏洞测试的Plug-ins,而Client则利用服务器端所提供的各种Plug-ins来测试工作站或服务器并产生报告,报告的格式包括了HTML、XML、NSR(Nessus本身的存档格式)、TXT、TEX(LaTex格式)。其Plug-ins自有一套语法叫做NASL(NessusAttackScriptsLanguage),可以自订对特定的连接埠进行封包测试,藉以判断是否为漏洞(早期使用C语言来作为Plug-ins的语法,但以被淘汰)一、安装安装的方式分为Server跟Client两部分。首先Server必须安装在UNIX环境下,(已试过FreeBSD:ports安装跟Linux:rpm安装)这部分没有什么问题,装下去就对了,接下来必须安装Plug-ins(若是不装Plug-ins,Nessus什么也不会测),Plug-ins可以选择一个一个下载后拷到指定目录即可,不过正确的作法应该是使用CVS的方式来维护更新Plug-ins的版本。

CVS系统又分作CURRENT跟STABLE两种,STABLE版本但讲究稳定,许多新释出的Plug-ins并没有包括在里面,而CURRENT虽然有最新的Plug-ins,但测试不见得稳定正确,有可能将你的受测工作站或服务器损害,因此要使用那个版本请自行斟酌。安装方式如下:1.设定环境变量$exportCVSROOT=":pserver:anonymous@cvs.nessus.org:/usr/local/cvs"2.登入CVS系统密码为“anon”,只有第一次登入会需要密码,以后会自动记载你系统的某一个地方$cvslogin3-1.如果要抓取Nessus程序STABLE版本$cvs-z3checkout-rNESSUS_1_0nessus-libraries$cvs-z3checkout-rNESSUS_1_0libnasl$cvs-z3checkout-rNESSUS_1_0nessus-core$cvs-z3checkout-rNESSUS_1_0nessus-plugins3-2.如果要抓取Nessus程序CURRENT版本$cvs-z3checkoutnessus-libraries$cvs-z3checkoutlibnasl$cvs-z3checkoutnessus-core$cvs-z3checkoutnessus-plugins4.以后要检查更新部分时只要打$cvs-z3-Pnessus-libraries$cvs-z3-Plibnasl$cvs-z3-Pnessus-core$cvs-z3-Pnessus-plugins完成!!Nessus是一套强大的漏洞测试工具,但是对于他产生的报告不够完整是它的一大致命伤,目前他所采行的方法是把漏洞报告及修补漏洞的方法写死在Plug-ins里,但并不是每一个Plug-ins撰写者都有写上修补方式这部分的说明,因此我们的目的是写一个ReportReader来读取Nessus所产生的报告并自动补上漏洞相关的网址(报告格式为HTML或XML),补强的方式是连结CERT的搜寻器来产生,目前遇到的问题在于我们要选择哪一种语法来写这支ReportReader的程序(VB除外),也使我们的研究主题由Nessus暂时转到了程序语言的部分,因此Nessus暂时在此打住4.ScriptsLanguage截至目前为止,我们尝试过的语言Tcl、Perl、Python都是属于ScriptingLanguages,他们跟C或JAVA这种systemprogramminglanguages有很大的差异。SL会有一组派得上用场的组件(component),用别的语言写成。SL不会从头开始,而是结合已经写好的组件。比方说,Tcl跟VisualBasic可以用来管理使用者接口组件,而Unixshellscript可以把组件当作"filter",来组成一条"生产线",制造所要的信息。SL可以用来扩展已经存在组件的功能,而很少用来发展复杂的数据结构、算法。这些东西应该由组件提供。因此,SL常被称为"黏接语言"或者"系统整合语言"。为了简化组合组件的工作,SL通常没有型态。所有东西看起来,用起来都一样,也可以交换着用。比方说,在Tcl或VB中,同一个变量既能存字符串,又能存整数。而程序代码跟数据可以互通,因此能够在线产生新程序。由此可以看到SL对于文字数据的处理蛮擅长的。V像这样无型态的语言更容易结合组件。因为它并不对"东西该如何使用"做任何限制。

组件会怎么用,搞不好连原先的设计者都不清楚。换句话说,组件的使用是有弹性的,不同状况下有不同用法。对于ScriptsLanguage有点概念以后,我们决定选取Perl跟Python两方面进行,以Tk模块作图形化接口,正在钻研当中,目前以Perl/Tk较有进度(简清岱主打)(因为有花钱买书…没钱:~~),Python相关书籍也将入手,目前找到的文件教学,主要都以数学运算的应用为例子(Python的数学函式支持很丰富,一进Python的console下就可以当成一台超强的计算器来用了),近程阶段目标是写出图形化的小算盘出来。

目前语言学习部分到此为止三、自我评估及心得感想对于这学期的实习成果,自己感觉并不是很满意,因为一开始的Hackerslab最近产生新的问题,必须要整份重弄,令人感到有点恐惧。再者,由Nessus延伸出来的ScriptsLanguage学习,也是没有突破性的进度,最近即将面对的新挑战---PDA程序设计比赛,更因为各种原因而迟迟没犯法开始进行进一步的讨论与动作,整体来说,给自己打50的不及格分数…感想方面,真的觉得专业实习压力比课业还来得大,尤其是每个礼拜都会有的meeting,看到大家每次meeting都跟上衣次比有所进步的样子,就更感到压力,总觉得自己还要在多学习才不会被别人赶过去。四、对系上的建议以往听学长姐的经验,对于专业实习期望颇高,总觉得能因为专业实习对于自己的实力大大提升,但是这一届校内专业实习的人数超越以往,

而就我所认识的校内实习同学们,大多数都是虚晃一学期,因此建议对校内实习的人数能有所限制,另外,对于郭姐对实习相关的讯息一而再再而三的提醒表示感谢!

第2篇:计算机专业实习报告

从去年十一月份我带着期盼与兴奋的心情,踏进了万地联合(厦门)工程设计有限公司三明分公司大门,展开了我大四实习之旅。这段时间带给了我很多值得思考的地方。

顾名思义,实习就是实践学习,也就是把学生生涯中所学到的知识融会到工作实践当中的非理论学习。能够将两者有机地结合运用,就是实习的最终目的。在设计院的实习工作中,我很深刻地体会到这一点。这段时间,我用到了几乎所有我在学生生涯中学习过的电脑软件作为开展工作的工具,甚至一些我还没有学过和接触过的电脑软件,都有机会让我碰上了。作为一名学生,能够操作使用电脑软件就已经达到学习目标;而作为一名设计人员,能够快速熟练地运用和操作各种电脑软件才能够满足工作上的要求。

回想刚来到设计院时,对于天正命令使用十分不熟练。通过刚开始描图,看到密密麻麻的施工图,从哪画起都有些茫然。经过一段时间练习和老总师兄的指导,慢慢的自己有了画图的步骤,拿了一些项目练习后,慢慢的学到大家平时总结的比较好的方法。到现在为止自己也画过:400平方米矩形蓄水池(覆土500),旭森仓库方案,蒋氏住宅平面图,清流一中食堂与教师周转用房,科技楼,清流嵩口中学校门口,林畲小学教师宿舍楼。在画图的进步同时,有很多空闲时间我们就看看规范,画图的依据都是这些规范,所以了解规范是很重要的。这段时间主要看的都是建筑方面的规范。例如:住宅设计规范,民用建筑设计规范,中小学设计规范等等。

很庆幸能来到万地联合(厦门)工程设计有限公司三明分公司设计院实习,在这里能接触建筑新的专业的设计方面知识。在这里实习有自己学院的师兄指导,我们也就学习的方向更明确,很多不清楚的地方也可以直接得到解决,这样对我们的学习就更有积极性了,同时整个学习气氛也相对比较好。相当于一个团队,这样做事就更有默契,实践能力相对的提高了。

在实习的过程中,除了要对所学的理论知识进行实践之外,还要学会处理人与人之间的关系。在现实的社会中,纷繁复杂的人际利益关系就像是一张张的网,连接着这个社会中的每个人,而当你能够把这张网不断地进行扩张,并且保持其完好的状态,就有在社会中立足的基础和取得发展的机会。也许我们不必将这个关系看得太复杂和过分重要,毕竟我们才刚从学校里走出来,要建立良好的人际关系也需要一定的时间慢慢积累和沉淀。

在这段实习期间,从专业水平、方案设计能力到为人处世都有不同程度的提高。总结过去,展望未来,我对这五个月时间的实习谈谈自己的体会,做一个小小的总结。希望在接下去的实习更加努力,为毕业后工作奠定坚实的基础。

第3篇:计算机专业实习报告

实习目的

1.通过理论联系实际,巩固所学的知识,提高处理实际问题的能力。

2.了解设计专题的主要内容,为毕业设计的顺利进行作好充分的准备,为自己能顺利与社会环境接轨作好准备。3.从实习中,体会到团队精神的重要性,为人处事的艺术等方面,这也是融入社会所要经历的一部分,提前接触了解,让我不会在社会工作中措手不及。

实习内容

1.公司内部的网络在网络管理员的带领下,了解、学习各种问题的解决方案。

2.了解计算机软件开发在基本流程和开发过程,充分学习工作中会遇到的问题。

3.学习与各职人员的交流,集中全力为一个目的,就是使工作完成的地最佳。

解决的主要问题及效果

在公司实习期间,在师傅的帮助下我用书面的方式整理了不少关于硬件故障的经验,比如说:我们可以在电脑启动的时候就可以通过声音来判断故障:1短:启动正常,2短:非致命错误,1长1短:显示错误,1长2短:键盘错误;计算机蓝屏的原因有:

一、系统重要文件损坏或丢失引起的(包括病毒所致),

二、内存超频或不稳定造成的蓝屏,

三、硬件的兼容性不好引起的蓝屏,

四、硬件散热引起的蓝屏故障;计算机经常死机的原因有:

一、系统出现错误包括病毒所致,

二、主板的芯片或者其他的零部件损坏,

三、显卡接触不良,

四、内存接触不良,

五、CPU风扇散热不良,

六、计算机的电源有问题,

七、硬盘出现故障等;

计算机黑屏的原因:

一、显示器断电,或显示器数据线接触不良;

二、主板没有供电;

三、显卡接触不良或损坏;

四、CPU接触不良;

五、内存条接触不良;

六、机器感染CIH病毒,BIOS被破坏性刷新等等。

学生自我总结

要想在短暂的实习时间内,尽可能多的学一些东西,这就需要跟师傅有很好的沟通,加深彼此的了解。刚到公司,师傅并不了解你的工作学习能力,不清楚你会做哪些工作,不清楚你想了解什么样的知识,所以跟师傅建立起很好的沟通是很必要的。同时我觉得这也是我们将来走上社会的一把不可获缺的钥匙。通过沟通了解,师傅我有了大体的了解,一边有针对性的教我一些计算机知识,一边根据我的兴趣给予我更多的指导与帮助,例如我对网络布线,电脑硬件安装,系统、网络或硬件故障排除,工作原理应用等方面比较感兴趣,师傅就让我和他一起完成电脑故障排除工作。在这次的工作中,我真正学到了计算机教科书上所没有的知识,拥有了实践经验,这才真正体现了知识的真正价值,学以致用。

在这段实习的日子里,我经历了很多以前所没有经历过的事,就比如一次小的责任担当,我懂得责任与职责相匹配,但这却是我认识到我以前的缺点,一个人在他的学生时代最重要的目的就是学习知识,增长见识,锻炼能力,尤其在大学学习时候,参于各项社会实践活动亦然是一个很好的锻炼机会,到时融入社会,也可以从学生时代借鉴一些理论和知识,不至于融入社会时无从下手。

实习是为以后工作学习打基础,珍惜每一个锻炼自己的工作机会,不论什么人,他有什么学历,从事什么工作,各项素质怎么样,其实他都有我可以学习借鉴的优点。没有哪一件事情是可以轻轻松松的解决,但是我们认真对待,理论联系实际,相信,不能解决也能从中学到各项知识。完成每一件任务都是让人成长的,经历一段过程,喜悦或是艰辛,尽管经历的方式不尽相同,但它的结果是相同的,我们都会因涉事而成长。

更多相关内容: