源代码

CVE&CWE概念及其关系

别来无恙 提交于 2020-01-29 17:36:25
1. 概念 CVE (Common Vulnerabilities & Exposures,通用漏洞和风险)是国际著名的安全漏洞库,也是对已知漏洞和安全缺陷的标准化名称的列表,它是一个由企业界、政府界和学术界综合参与的国际性组织,采取一种非盈利的组织形式,其使命是为了能更加快速而有效地鉴别、发现和修复软件产品的安全漏洞。 CWE (Common Weakness Enumeration,通用缺陷枚举)是由美国国土安全部国家计算机安全部门资助的软件安全战略性项目。CWE成立于2006年,建立之初分别借鉴了来自CVE(“Common Vulnerabilities & Exposures”公共漏洞和暴露),CLASP(Comprehensive Lightweight Application Security Process,全面轻量级应用安全过程)等组织对缺陷概念描述和缺陷分类。 CWE,先后推出了 CWSS (Common Weakness Scoring System)和 CWRAF (Common Weakness Risk Analysis Framework)工程研究。CWSS主要研究的是对源代码缺陷产生危害的不同等级划分,目前属于研究初期,研究报告发布于2011年。报告中称:跨站脚本攻击、SQL注入、缓冲区溢出、跨站伪造请求和信息泄漏等是危害级别最高的缺陷。

Linux入门-9 软件管理基础(CentOS)

爷,独闯天下 提交于 2020-01-29 03:50:17
0. 源代码形式 1. RPM软件包管理 RPM RPM查询 RPM验证 2. YUM软件管理 YUM基本命令 YUM查询 创建YUM仓库 0. 源代码形式 绝大多数开源软件都是直接以源代码形式发布 源代码一般会被打包成 tar.gz 的归档压缩文件 程序源代码需要编译成为二进制形式之后才能够运行使用 源代码级别编译流程: ./configure 检查编译环境、相关库文件以及配置参数并生成makefile make 对源代码进行编译,生成可执行文件 make install 将生成的可执行文件安装到计算机中 源代码形式的软件使用起来较为麻烦,但是兼容性及可控制性较好 开源软件一般都会大量使用其他开源软件的功能,所以开源软件会有大量的依赖关系 1. RPM软件包管理 源代码形式的缺点:操作复杂、编译时间较长、极容易出现错误 源代码形式的优点:适用所有系统、可定制 为了方便使用,Erik Troan和Marc Ewing开发了RPM(Readhat Package Manager) RPM通过将源代码基于特定平台系统编译为可执行文件,并保存依赖关系,从而简化开源软件的安装管理 RPM设计目标如下: 使用简单 使用单一软件包格式文件发布(.rpm) 可升级 追踪软件依赖关系 基本信息查询 软件验证功能 支持多平台 RPM 命名规范: name-version.os.platform

调试 ASP.NET Core 2.0 源代码

僤鯓⒐⒋嵵緔 提交于 2020-01-28 18:17:53
在Visual Studio 2017中可以通过符号以及源链接,非常方便对 ASP.NET Core 2.0中源代码进行调试。在这篇文章中,我们将重点介绍如何使用源链接对ASP.NET Core源进行调试。 什么是源链接? 和我一样,您可能已经注意到在编译代码时,会创建的PDB文件。这些文件保存了符号信息,这些信息可以选择用于支持对外部源代码的调试。某些类型的符号文件可能包含一些源代码或源代码的映射。 很长一段时间以前,Microsoft已经托管了符号服务器,它们保存Microsoft产品(如.NET Framework和ASP.NET Core)已发布的符号文件。Visual Studio支持动态下载符号。为此,您必须禁用“调试” -> “常规”选项中的“启用仅我的代码”选项。默认情况下,此选项在Visual Studio中是启用的。 有关符号、符号服务器等的更多信息,请参阅此 MSDN链接 。 源链接允许您在符号文件中嵌入被调用方法的名称和位置清单,它可以识别包含代码的文件以及可以从哪里检索文件。ASP.NET Core(不是.NET Core)现在支持源链接,并提供到GitHub上托管代码的链接。 启用和使用源链接 首先的要求是将Visual Studio 2017更新到最新的版本(15.3),该更新添加了源链接的支持。如果安装此项,在“调试” -> “常规”选项中,您将看到

GDB调试之TUI界面

寵の児 提交于 2020-01-25 06:32:37
TUI(TextUser Interface)为GDB调试的文本用户界面,可以方便地显示源代码、汇编和寄存器文本窗口,TUI使用效果如下图所示。 Tui界面可以通过运行gdbtui或gdb-tui命令进入(其它变种gdb也一样,如arm-none-eabi-gdb-tui),当然也可以进入gdb界面后使用TUI快捷键打开,如C-xC-a快捷键,详见TUI快捷键绑定章节。 1 TUI Overview 在TUI模式中,可以显示以下几个窗口: 命令窗口 用于GDB调试时的命令输入和命令结果输出显示,与普通GDB窗口无异。 源代码窗口 用于显示程序源代码,包括当前运行行、中断以中断标识等。 汇编窗口 显示当前程序的汇编代码。 寄存器窗口 显示处理器的寄存器内容,当寄存器内容发生改变时会高亮显示。 源代码窗口和汇编窗口会高亮显示程序运行位置并以'>'符号标记。有两个特殊标记用于标识断点,第一个标记用于标识断点类型: B 程序至少有一次运行到了该断点 b 程序没有运行到过该断点 H 程序至少有一次运行到了该硬件断点 h 程序没有运行到过该硬件断点 第二个标记用于标识断点使能与否: + 断点使能Breakpointis enabled. - 断点被禁用Breakpointis disabled. 当调试程序时,源代码窗口、汇编窗口和寄存器窗口的内容会自动更新。 TUI运行时

Source Insight使用手册

十年热恋 提交于 2020-01-25 06:16:24
SourceInsight使用手册 一、准备工作 (1.1)源代码目录(这里存放项目源代码的实际路径): (1.2)SourceInsight软件存放的配置文件目录,由于本人不想把配置文件和源代码放在一个目录,因此特别新建了一个新的目录,如下: 二、操作步骤 该操作以源代码为“zgs_fbs_v1.0.0”,配置文件放在fbs目录为例进行操作,具体步骤如下: (2.1)打开sourceinsight软件,点击Project->New Project,如下: 会弹出如下界面: 修改上图中标记“1”中的项目名称(这里根据项目命名)和“2”中的配置路径(选择步骤1.2中新建的目录)。 点击“ok",出现如下界面: 修改上图中红框标记的源代码路径(选在步骤1.1的源代码路径)点击“ok”,弹出如下界面: 点击"Add Tree"按键,显示Project Files加载完成,点击“Close”,可以看到项目已经加载进来了,如下: 至此,项目就加载完成了,但是可能还会遇到下面的问题; 随便选择选择代码中的函数(按CTRL键+鼠标左键提示“Symbol not found:…”),如下: 解决办法: (1)鼠标右键如下红框中地方,如下: 会提示如下界面: 点击“Open Project”,出现如下界面: 左边Base选项框选中当前的配置路径,点击"ok" 接着点击“是”即可

java计算器源代码

一笑奈何 提交于 2020-01-23 00:09:53
界面如下:可以实现连加 制作计算器是java和Android入门的基础代码,并且计算器的算法有很多种,这里只是抛砖引玉. 来源: 柳州网站优化 来源: https://www.cnblogs.com/a5651651616/p/12229950.html

Azure通过TFS进行部署

痴心易碎 提交于 2020-01-21 22:11:37
最近使用GitHub不顺,想起了微软还有个TFS云服务地址如下: https://tfs.visualstudio.com 。具体参见[ [免费] 微软TFS 2012云服务 ]。使用方法非常简单,直接申请一个地址就可以用了,貌似对空间也没有什么限制,非常给力,只是用户要少于5个,对于个人的小项目非常合适。既可以使用TFS强大的功能,又不用安装TFS,感觉非常棒。 TFS云服务主要提供如下功能: 源代码管理 工作项跟踪 自动化生成 敏捷任务版 注册账号后,就可以建立项目了,建立项目后可以通过 Open new instance of Visual Studio 打开的是一个VS2012,看它的地址是: vstfs:///Framework/TeamProject/e7be0b49-5317-4d21-a5e4-be1fcc2909d8?url=https%3a%2f%2fgeffzhang.visualstudio.com%2fDefaultCollection ,弹出窗口使用LiveID账号登陆后就打开了 关于TFS的使用,这里有几篇入门文章: TFS下的源代码控制 使用Visual Studio Team Explorer管理项目源代码 为什么使用TFS 2012进行源代码管理——TFS 2012使用简介(一) TFS 发行的节奏 Azure通过TFS进行部署 来源:

Sizzle.filter [ 源代码分析 ]

谁说我不能喝 提交于 2020-01-20 08:58:33
最近的研究已Sizzle选择,对于原理中我们也不得不佩服! Sizzle中间filter办法。主要负责元素表达式过滤块的集合,在内部的方法调用Sizzle.selector.fitler滤波操作的操作方法。 Sizzle.filter要点5: 1 使用LeftMatch确定表达式类型。 2 调用Sizzle.selectors.preFilter预过虑函数,运行过滤前的修正。 3 调用Sizzle.selectors.filter[ type ] 中相应的过滤函数,运行过滤操作,假设返回false,刚将元素集合中的相应位置的元素替换为false; 4 删除表达式中已过滤的部分 5 反复1 - 4 步骤 源代码例如以下: Sizzle.filter = function( expr, set, inplace, not ) { //expr 块表达式 //set 待过滤的元素集合 //inplace 是否替换,假设为true,那么当set中的元素与expr不匹配时,刚将不匹配的元素替换为false, //否则。构造新的数组,仅仅保留匹配的元素 //not: 假设为true,则去掉匹配元素,保留不匹配元素。假设为false,则保留匹配元素,去掉不匹配元素 var match, anyFound, type, found, item, filter, left, i, pass, old

Android 源代码结构

若如初见. 提交于 2020-01-20 08:52:50
   简介   在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试。但是,如果目标版本的SDK没有关联对应版本的源代码的话,就会提示你找不到源代码。   图:找不到Android源码的提示     我们都知道Android系统是一个开源工程,在网上可以下载到源代码。一般在网上搜索一下,就会找到各种下载源代码的方法,比如使用Git和Repo,android源代码下载的网址是 http://android.git.kernel.org/ 。关于利用Git下载android源代码的方法,我就不再赘述了,因为网上的方法很多,这里给出一个参考链接 Windows平台下Android源码的下载 。   如果你跟我一样是初学者,相信看了上面的文章,你就知道如何使用Git下载android源码了。但是,看着 http://android.git.kernel.org/ 站点下的各种目录和文件,相信你也会跟我一样傻眼,不知道那个目录下的文件对应是什么代码,想找到自己所需要的东西都比较难了。所以这里给大家介绍一下android源代码的结构,如果发现文章有错误之处,还请各位童鞋轻点砸砖!   图: http://android.git.kernel.org/ 下纷繁复杂的文件    

Android 源代码结构

泪湿孤枕 提交于 2020-01-20 08:00:33
简介   在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试。但是,如果目标版本的SDK没有关联对应版本的源代码的话,就会提示你找不到源代码。   图:找不到Android源码的提示     我们都知道Android系统是一个开源工程,在网上可以下载到源代码。一般在网上搜索一下,就会找到各种下载源代码的方法,比如使用Git和Repo,android源代码下载的网址是 http://android.git.kernel.org/ 。关于利用Git下载android源代码的方法,我就不再赘述了,因为网上的方法很多,这里给出一个参考链接 Windows平台下Android源码的下载 。   如果你跟我一样是初学者,相信看了上面的文章,你就知道如何使用Git下载android源码了。但是,看着 http://android.git.kernel.org/ 站点下的各种目录和文件,相信你也会跟我一样傻眼,不知道那个目录下的文件对应是什么代码,想找到自己所需要的东西都比较难了。所以这里给大家介绍一下android源代码的结构,如果发现文章有错误之处,还请各位童鞋轻点砸砖!   图: http://android.git.kernel.org/ 下纷繁复杂的文件     认识Android源代码结构之前