Python中的10个常见安全漏洞及修复方法
写安全的代码很困难,当你学习一门编程语言、一个模块或框架时,你会学习其使用方法。在考虑安全性时,你需要考虑如何避免代码被滥用,Python也不例外,即使在标准库中,也存在着许多糟糕的实例。然而,许多 Python 开发人员却根本不知道这些。以下是我总结的10个Python常见安全漏洞,排名不分先后。1、输入注入 注入攻击影响广泛且很常见,注入有很多种类,它们影响所有的语言、框架和环境。S
恢复EXT3下被删除的文件
下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件。假设我们有一个文件名叫 ‘test.txt’ $ls -il test.txt 15 -rw-rw-r– 2 root root 20 Apr 17 12:08 test.txt 注意:: “-il” 选项表示显示文件的i-node号(15),如果你不知道Unix/Linux文件系统的“I结点”的话,你
简单实用的CODE REVIEW工具
Code Review中文应该译作“代码审查”或是“代码评审”,这是一个流程,当开发人员写好代码后,需要让别人来review一下他的代码,这是一种有效发现BUG的方法。由此,我们可以审查代码的风格、逻辑、思路……,找出问题,以及改进代码。因为这是代码刚刚出炉的时候,所以,这也是代码重构,代码调整,代码修改的最佳时候。所以,Code Review是编码实现中最最重要的一个环节。长时间以来,Code
不要试图拯救那些职场上的那些“无可救药”
此文来自Marshall Goldsmith的博客,此人曾任Peter Drucker Foundation 的Board member(实在不知道怎么翻译),49年出生,生平中是一系列管理学方面的成就,是一位罕见的高产的,大师型的博主。显然,我所翻译的标题有些夸张(原标题是“spotting the uncoachables”)。职场上除了职位所确立的关系之外,还有一种重要的关系,那
LINUX磁盘使用命令DU的改进
我们知道,在Linux下,如果你想知道当前目录下,每个文件或子目录的尺寸,你可以使用du命令来完成这一动作。如:1 $ du -sh *这个命令可以以K,M,G的方式显示每个文件和子目录的大小。我们把这种方式叫做,human-readable,也就是可以让人读的方式,如下所示:8.4G Desktop2.6G Documents12K keys12M Pictures536K scri
最完美的LINUX桌面软件
下面是关于Linux桌面环境下,目前为止最完美的部分。之所以说他们完美,是因为他们不但很养眼,而且也使用最好的多媒体技术,有最好的可用性。在某些方面,他们甚至超过了Windows和Mac-OS。基础Debian 或是 Ubuntu。这两个分发包是目前使用最广泛的Linux桌面操作系统的分发包了。软件包管理器因为我们使用debian……所以apt 必然是软件包管理器中最不错的一个。gnome2桌面环
混乱C源代码的几个错误,你犯了吗?
下面是一个Step by Step的教程,教你如何把一个清晰的代码变得复杂难懂的。当然,这只是一个“简明教程”了。开始程序下面是一个找出素数的程序:下面我们来看看如何把上面这段代码搞得复杂难懂。第一步、把for变成while通常来说,for循坏要以while循坏简单一些,上面的程序有二重for循环,我们不但要把其变成while循环,而且还要把二重循环的变成一重的循环,然后使用大量的if-else语
结对编程的利与弊
结对编程(Pair-Programming)可能是近年来最为流行的编程方式。所谓结对编程,也就是两个人写一个程序,其中,一个人叫Driver,另一个人叫Observer,Driver在编程代码,而Observer在旁边实时查看Driver的代码,并帮助Driver编程。并且,Driver和Observer在一起时可以相互讨论,有效地避免了闭门造车,并可以减少后期的code review时间,以及代
如何自己写一个网络爬虫
这里是维基百科对网络爬虫的词条页面。网络爬虫以叫网络蜘蛛,网络机器人,这是一个程序,其会自动的通过网络抓取互联网上的网页,这种技术一般可能用来检查你的站点上所有的链接是否是都是有效的。当然,更为高级的技术是把网页中的相关数据保存下来,可以成为搜索引擎。从技相来说,实现抓取网页可能并不是一件很困难的事情,困难的事情是对网页的分析和整理,那是一件需要有轻量智能,需要大量数学计算的程序才能做的事情。下面
资源推荐: GOOGLE CODE UNIVERSITY
如果你的专业课里有过不少计算机科学之类的内容,你可能还记得很多中文课本不太好读,其原因一方面有可能因为是课本里的语言(符号)粗制滥造,另一方面有可能是因为你的思维方式不适应课本里的内容。我推荐所有能看懂英文的读者多去搜索一下英文世界里的教材,从而能够摆脱劣质教材或语言因素所带来的束缚。为什么推荐英文教材呢?大家可以参考一下英文教材编写者(计算机科学界大儒,图灵奖得住) Dijkstra对于自己写作
LINUX 命令速查
下面两个网站可以方便地检索Linux下的命令及一些用法。我比较喜欢第一个,不仅仅是因为它支持中文,而且他还给所有的命令做了一个分类。而第二个类似于一个速查手册,有些像man手册。有些时候,如果知道了命令,用linux下的man手册会显得更加方便,但在Linux下,太多的命令不是我们不会用,而是我们不知道。所以,类别检索就会显得很关键了,这正是我向大家推荐第一个网站的原因。http://www.li
学习数据库的基础知识的书籍
一开始学数据库的时候,和学校里教的 C/C++/Java 完全不是一个路子的事。你学会了 C 中的函数,Java 中的方法,却无法理解 SELECT WHERE FROM 到底为什么不能执行;你知道了指针,却依旧不知道为什么需要一个索引才能使得 SQL 跑的飞快。其实入门来说,把书好好看看,例子好好做做,就会了。从入门到能做事,才是需要花时间精进的。数据库的内部结构,就像是操作系统那么复杂。它涉及
MySQL数据库基本知识
1.创建数据库 CREATE DATABASE database_name2.删除数据库 DROP DATABASE database_name3.选择数据库 USE database_name4.数据类型(1)数值类型 (2)日期和时间类型 (3)字符串类型5.创建数据表 CREATE TABLE table_name (column_name column_type
Linux系统如何查看版本信息
Linux操作系统是基于UNIX操作系统发展而来的一种克隆系统,那么Linux系统如何查看版本信息呢,相信大家对这个问题很感兴趣,下面给大家介绍一下,希望可以帮助到大家。1输入uname -a,可显示电脑以及操作系统的相关信息。Linux系统如何查看版本信息2输入cat /proc/version,说明正在运行的内核版本。Linux系统如何查看版本信息3输入cat /etc/issue,显示的是发