精华内容
下载资源
问答
  • apt
    千次阅读
    2020-10-07 22:51:36

    替换apt国内源

    执行以下命令

    mv -f /etc/apt/sources.list /etc/apt/sources.list.bak
    cat > /etc/apt/sources.list<< EOF
    deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
    EOF
    

    把原来的apt源重命名为sources.list.bak,将阿里云的源作为apt默认使用的源
    如果阿里云的源失效,则考虑执行以下命令恢复官方源

    mv -f /etc/apt/sources.list.bak /etc/apt/sources.list
    

    更新软件包信息

    只更新不升级,已安装的软件包是否有可用的更新

     apt update
    

    显示如下则代表所有的包都是最新的,没有可以更新的。

    Ign:1 http://mirrors.aliyun.com/ubuntu trusty InRelease
    Hit:2 http://mirrors.aliyun.com/ubuntu trusty-security InRelease
    Hit:3 http://mirrors.aliyun.com/ubuntu trusty-updates InRelease
    Hit:4 http://mirrors.aliyun.com/ubuntu trusty-proposed InRelease
    Hit:5 http://mirrors.aliyun.com/ubuntu trusty-backports InRelease
    Hit:6 http://mirrors.aliyun.com/ubuntu trusty Release
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    All packages are up to date.
    

    显示如下则代表还有需要更新的包

    224 packages can be upgraded. Run 'apt list --upgradable' to see them.
    

    可更新的包信息

    执行以下命令显示可更新包的具体信息

    apt list --upgradable
    

    apt自己的更新信息也在列表中

    更新所有包

    apt -y upgrade
    

    直接将所有的包更新到最新,注意,这可能是个危险操作。
    如果你的开发和生产环境依赖特殊版本,则需要使用以下命令升级指定某个包到特殊版本

    apt upgrade xxx=1.0.0
    

    安装编译必备

    build-essential 是一个meta package,它依赖一篮子软件包,使用以下命令可以看到依赖关系

    $ apt-cache depends build-essential
    build-essential
     |Depends: libc6-dev
      Depends: <libc-dev>
        libc6-dev
      Depends: gcc
      Depends: g++
      Depends: make
        make-guile
      Depends: dpkg-dev
    
    

    gcc及make方式

    apt install build-essential
    

    使用cmake构建系统需要额外安装

    apt install cmake
    

    ninja取代make需要额外安装

    apt install ninja-build
    

    如果你使用的是更老的编译方式,那么执行以下命令

    apt install autoconf      # loads autoscan, autoconf and associated macros
    apt install automake
    apt install libtool
    apt install m4
    

    安装软件包

    apt install golang
    

    查找软件包名

    apt-cache search golang
    

    查找包含文件的软件包名

    apt install apt-file
    apt-file update
    apt-file search lua.hpp
    

    这个类似于centos的yum whatprovides 命令,查找返回以下结果

    emscripten: /usr/share/emscripten/tests/lua/src/lua.hpp
    liblua5.1-0-dev: /usr/include/lua5.1/lua.hpp
    liblua5.2-dev: /usr/include/lua5.2/lua.hpp
    liblua5.3-dev: /usr/include/lua5.3/lua.hpp
    libluabind-dev: /usr/include/luabind/detail/convert_to_lua.hpp
    libluajit-5.1-dev: /usr/include/luajit-2.1/lua.hpp
    libtexlua52-dev: /usr/include/texlua52/lua.hpp
    libtexluajit-dev: /usr/include/texluajit/lua.hpp
    lua5.1-doc: /usr/share/doc/lua5.1-doc/etc/lua.hpp
    tarantool-lts-dev: /usr/include/tarantool/lua.hpp
    

    列出软件包的所有文件

    apt-file list golang
    

    删除软件包

    apt remove golang
    
    更多相关内容
  • apt命令

    千次阅读 2022-04-29 23:23:01
    apt 最常用的 Linux 包管理命令都被分散在了 apt-get、apt-cache 和...在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。 a

    apt

    1. 最常用的 Linux 包管理命令都被分散在了 apt-get、apt-cache 和 apt-config 这三条命令当中。

    2. apt 命令的引入就是为了解决命令过于分散的问题,它包括了 apt-get 命令出现以来使用最广泛的功能选项,以及 apt-cache 和 apt-config 命令中很少用到的功能。

    3. 在使用 apt 命令时,用户不必再由 apt-get 转到 apt-cache 或 apt-config,而且 apt 更加结构化,并为用户提供了管理软件包所需的必要选项。

    apt和apt-get命令之间的区别

    apt 命令 取代的命令 命令的功能
    apt installapt-get install安装软件包
    apt removeapt-get remove移除软件包
    apt purgeapt-get purge移除软件包及配置文件
    apt updateapt-get update刷新存储库索引
    apt upgradeapt-get upgrade升级所有可升级的软件包
    apt autoremoveapt-get autoremove自动删除不需要的包
    apt full-upgradeapt-get dist-upgrade在升级软件包时自动处理依赖关系
    apt searchapt-cache search搜索应用程序
    apt showapt-cache show显示装细节

    apt 还有一些自己的命令:

    1. apt list 列出包含条件的包(已安装,可升级等)
    2. apt edit-sources 编辑源列表

    yum和apt-get用法及区别

    一般来说著名的linux系统基本上分两大类:

    1. RedHat系列:Redhat、Centos、Fedora等

    2. Debian系列:Debian、Ubuntu等

    RedHat系列

    1 常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数”
    2 包管理工具 yum
    3 支持tar包

    Debian系列

    1 常见的安装包格式 deb包,安装deb包的命令是“dpkg -参数”
    2 包管理工具 apt-get
    3 支持tar包

    apt-get

    参数

     -h 		帮助文件。  
    
     -q 		输出到日志 - 无进展指示  
    
     -qq 		不输出信息,错误除外  
    
     -d 		仅下载 - 不安装或解压归档文件  
    
     -s 		不实际安装。模拟执行命令  
    
     -y 		在需要确认的场景中回应 yes
    
     -f 		尝试修正系统依赖损坏处  
    
     -m 		如果归档无法定位,尝试继续  
    
     -u 		同时显示更新软件包的列表  
    
     -b 		获取源码包后编译  
    
     -V 		显示详细的版本号  
    
     -c=? 		阅读此配置文件  
    
     -o=? 		设置自定的配置选项,如 -o dir::cache=/tmp  
    

    升级 & 安装

    apt-get update						// 更新源文件,并不会做任何安装升级操作
    
    apt-get upgrade						// 升级所有已安装的包
    
    apt-get install packagename				// 安装指定的包
    
    apt-get install packagename --only-upgrade		// 仅升级指定的包
    
    apt-get install packagename --reinstall   		// 重新安装包
    
    apt-get -f install   					// 修复安装
    
    apt-get build-dep packagename				// 安装相关的编译环境
    
    apt-get source packagename  				// 下载该包的源代码
    
    apt-get dist-upgrade 					// 升级系统
    
    apt-get dselect-upgrade 	
    

    查询 & 显示

    apt-cache search packagename 				// 查询指定的包    
    
    apt-cache show packagename 				// 显示包的相关信息,如说明、大小、版本等 
    
    apt-cache depends packagename 				// 了解使用该包依赖哪些包
    
    apt-cache rdepends packagename 				// 查看该包被哪些包依赖
    

    删除 & 清理

    apt-get remove packagename				// 删除包    
    
    apt-get remove packagename -- purge 			// 删除包,包括删除配置文件等 
    
    apt-get autoremove packagename --purge 			// 删除包及其依赖的软件包+配置文件等(只对6.10有效,推荐使用)
    
    apt-get clean 						// 清理无用的包 
    
    apt-get autoclean 					// 清理无用的包 
    
    apt-get check 						// 检查是否有损坏的依赖
    

    yum

    参数

    -h:显示帮助信息; 
    
    -y:对所有的提问都回答“[yes](http://man.linuxde.net/yes)”;
    
    -c:指定配置文件;
    
    -q:安静模式;
    
    -v:详细模式; 
    
    -d:设置调试等级(0-10); 
    
    -e:设置错误等级(0-10); 
    
    -R:设置yum处理一个命令的最大等待时间; 
    
    -C:完全从缓存中运行,而不去下载或者更新任何头文件。
    

    更新 & 升级

    yum update 				// 更新所有的包
    
    yum upgrade				// 升级所有的包 
    
    yum check-update 			// 检查所有可更新的包
    
    yum update package1			// 更新指定程序包package1
    
    yum upgrade package1			// 升级指定程序包package1
    
    yum groupupdate group1 			// 升级程序组group1
    
    yum --exclude=python* update		// 升级的时候不升级python相关的包
    

    安装

    yum install 				// 全部安装 
    
    yum install package1 			// 安装指定的安装包package1 
    
    yum localinstall ~ 			// 从硬盘安装rpm包并使用yum解决依赖
    
    yum groupinsall group1 			// 安装程序组group1
    

    查找 & 显示

    um list 				// 显示所有已经安装和可以安装的程序包 
    
    yum list python				// 显示出名为python的包
    
    yum list python*			// 显示出名为python开头的所有的包
    
    yum list updates			// 显示出所有可以更新的包
    
    yum list installed			// 显示出所有已经安装的包
    
    yum list extras				// 显示出所有已安装但是不在yum仓库里的包
    
    yum grouplist 				// 查看系统中已经安装的和可用的软件组,可用的可以安装
    
    
    yum info				// 显示所有已经安装和可以安装的程序包的信息
    
    yum info python				// 显示出名为python的包的信息
    
    yum info python*			// 显示出名为python开头的所有的包的信息
    
    yum info updates			// 显示出所有可以更新的包的信息
    
    yum info installed			// 显示出所有已经安装的包的信息
    
    yum info extras				// 显示出所有已安装但是不在yum仓库里的包的信息
    
    yum groupinfo group1			// 显示程序组group1信息
    
    
    yum search python 			// 根据关键字python查找相关的包
    
    yum deplist python 			// 查看程序python依赖情况
    
    yum provides python			// 检测python包中包含的文件以及软件提供的功能。
    

    删除 & 清除缓存

    yum remove package1 			// 删除程序包package1 
    
    yum groupremove group1 			// 删除程序组group1 
    
    yum clean packages        		// 清除缓存目录下的软件包 
    
    yum clean headers			// 清除缓存目录下的 headers 
    
    yum clean oldheaders 			// 清除缓存目录下旧的 headers
    

    yum update和yum upgrade的区别

    yum update和yum upgrade的功能是一样的,都是将需要更新的package更新至软件源中的最新版。区别是 yum upgrade会删除旧版本的package,而yum update则会保留。因此如果软件依赖旧版本的package,最好是使用 yum update,确保不会出现兼容问题。

    展开全文
  • apt apt 用法_apt命令–实用用法指南

    千次阅读 2020-07-20 10:34:52
    apt apt 用法This guide will walk you through everything you’d need to start using the apt command in Linux. Packages help in delivering or installing any application on a Linux running system. A ...

    apt apt 用法

    This guide will walk you through everything you’d need to start using the apt command in Linux. Packages help in delivering or installing any application on a Linux running system. A Linux package is the pre-compiled version of any application.

    本指南将引导您逐步了解在Linux中开始使用apt命令所需的一切。 软件包有助于在Linux操作系统上交付或安装任何应用程序。 Linux软件包是任何应用程序的预编译版本。

    Packages make it easier for the end-user to work with applications. Instead of compiling from source, a package is like a Windows executable file that you can double-click to install.

    软件包使最终用户更容易使用应用程序。 程序包就像Windows可执行文件一样,可以双击以进行安装,而不是从源代码进行编译。

    These packages are available on the distribution’s repositories. You sure can manually handle the packages on your system if you like. But a package manager automates those tasks for you. Let’s get more understanding of the apt package manager today.

    这些软件包在发行版的存储库中可用。 您可以根据需要手动处理系统上的软件包。 但是,程序包管理器会自动为您执行这些任务。 让我们今天对apt软件包管理器有更多的了解。

    apt命令到底是什么? (What’s the apt command anyway?)

    The Advanced Package Tool, Or ‘APT’ for short, is the package management service for Ubuntu and Debian based systems. If you have been using Linux for a while, you must have seen the apt command before.

    Advanced Package Tool(简称“ APT”)是针对基于Ubuntu和Debian的系统的软件包管理服务。 如果您使用Linux已有一段时间,那么您之前一定已经看过apt命令。

    APT provides a user-friendly and interactive front-end tool for the users to manage packages without the complexity of the dpkg command.

    APT为用户提供了一种用户友好的交互式前端工具,使用户可以管理软件包,而无需dpkg的复杂性 命令。

    The apt command is responsible for installing, updating, removing, and managing packages of Ubuntu and Debian based systems.

    apt命令负责安装,更新,删除和管理基于Ubuntu和Debian的系统的软件包。

    This package manager soared in popularity after its introduction within the Ubuntu 16.04 LTS version. While the apt command in Linux offers a wide range of functionality, this tutorial will briefly discuss the most essential ones – installing and removing packages, updating and upgrading repositories, and finally searching for packages.

    该软件包管理器在Ubuntu 16.04 LTS版本中引入后Swift普及。 尽管Linux中的apt命令提供了广泛的功能,但本教程将简要讨论最基本的功能-安装和删除软件包,更新和升级存储库以及最终搜索软件包。

    探索apt命令 (Exploring the apt command)

    This command takes away the complexity of the dpkg interface and provides users with a simple and easy to understand method for managing packages in their repositories.

    此命令消除了dpkg界面的复杂性,并为用户提供了一种简单易懂的方法来管理其存储库中的软件包。

    Let us explore the common functions of the apt command. As the command works the same for both Debian and Ubuntu systems, we will only mention Ubuntu in this tutorial from now on.

    让我们探讨apt命令的常见功能。 由于该命令对Debian和Ubuntu系统都起作用,因此从现在开始我们只会在本教程中提及Ubuntu。

    1.安装软件包 (1. Installing a package)

    The most basic use of the apt command in Ubuntu is for package installation. While many general-purpose programs and services come pre-installed with the operating system, it doesn’t take away the need to install new software on your system.

    Ubuntu中apt命令的最基本用法是用于软件包安装。 尽管操作系统中已预装了许多通用程序和服务,但并不能消除在系统上安装新软件的需要。

    The apt command in Ubuntu allows us to install packages using the install option. Here is the syntax for installing a program or service using the apt command on Ubuntu.

    Ubuntu中的apt命令允许我们使用install选项安装软件包。 这是在Ubuntu上使用apt命令安装程序或服务的语法。

    
    sudo apt install [package name1] [package-name2] [package-name3]
    

    Here is how we use the apt install command to install a package on Ubuntu. In the screenshot below, we install the vsftpd package for an FTP server on Ubuntu.

    这是我们使用apt install命令在Ubuntu上安装软件包的方式。 在下面的屏幕截图中,我们在Ubuntu上为FTP服务器安装了vsftpd软件包。

    Sudo Apt Install
    Sudo Apt Install
    Sudo Apt安装

    This command also allows the user to install multiple packages at once by listing the package names one after another separated by spaces as shown in the syntax example.

    此命令还允许用户一次安装多个软件包,方法是依次列出软件包名称,并以空格隔开,如语法示例所示。

    2.卸载软件包 (2. Uninstalling a package)

    When you no longer need a program or service on your system, there is no use keeping it. It will only occupy system resources that you can devote to other purposes.

    当您不再需要系统上的程序或服务时,将其保留就没有用了。 它只会占用您可以用于其他目的的系统资源。

    The apt command takes care of it! We can uninstall a program or service from our system using the apt remove option.

    apt命令会处理它! 我们可以使用apt remove选项从系统中卸载程序或服务。

    Here is the syntax for removing a program or service from our system using the apt command.

    这是使用apt命令从我们的系统中删除程序或服务的语法。

    
    sudo apt remove [package name]
    
    Sudo Apt Remove 1
    Sudo Apt Remove
    Sudo Apt移除

    However, There will be some orphaned files from the installed package even after it’s removed. In such a case you can use the purge remove option.

    但是,即使已删除软件包,在安装的软件包中也会有一些孤立的文件。 在这种情况下,您可以使用“清除清除”选项。

    
    sudo apt --purge remove [package-name]
    

    This is generally a cleaner way of removing a package which also removes the files along with the package here automatically.

    通常,这是一种删除软件包的更干净的方法,该方法还会在此处自动删除文件和软件包。

    3.自动删除孤立的软件包 (3. Auto remove orphaned packages)

    Apt command handles dependencies for you so the don’t generally need to worry about them when installing a package.

    Apt命令为您处理依赖关系,因此在安装软件包时通常不需要担心它们。

    But the case is different when you’re uninstalling packages. Only the critical dependencies are removed while removing a package. The rest stay in our systems.

    但是在卸载软件包时情况有所不同。 删除软件包时,仅删除关键的依赖项。 其余的留在我们的系统中。

    That’s where the autoremove functionality comes into play.

    这就是自动删除功能发挥作用的地方。

    
    sudo apt autoremove
    

    The above command will uninstall all the orphaned packages from your system. This includes any package that was installed as a dependency and is no longer necessary.

    上面的命令将从系统中卸载所有孤立的软件包。 这包括已安装为依赖项且不再需要的任何软件包。

    4.更新APT存储库 (4. Updating APT repositories)

    The dpkg stores all the packages available for installation on your Linux distribution. However, as these packages are stored locally you can often end up having old versions of packages for a program when newer versions have been released.

    dpkg存储所有可用于在Linux发行版上安装的软件包。 但是,由于这些程序包存储在本地,因此,当发布了新版本的程序时,通常可能最终会获得程序的旧版本程序包。

    This causes a need for a method to update your repositories. Guess what? The apt update option has got you covered.

    这导致需要一种更新存储库的方法。 你猜怎么了? apt更新选项使您满意。

    
    sudo apt update
    

    It checks the online repositories and downloads all the updated packages to your local repository.

    它检查在线存储库,并将所有更新的软件包下载到本地存储库。

    5.升级系统软件包 (5. Upgrading your system packages)

    Once we update our local repositories, it is a wise choice to upgrade all your programs and services to the latest versions. This is possible through the apt upgrade option of the apt command on Ubuntu.

    一旦我们更新了本地存储库,明智的选择就是将所有程序和服务升级到最新版本。 这可以通过Ubuntu上apt命令的apt升级选项来实现。

    
    sudo apt upgrade
    

    This will scan all the installed packages on your system and find the programs or services which are running on an older version. Next, it will upgrade all such programs and services to the latest available versions.

    这将扫描系统上所有已安装的软件包,并找到在旧版本上运行的程序或服务。 接下来,它将所有此类程序和服务升级到最新的可用版本。

    This is an essential command as it allows you to initiate a system-wide upgrade using a single command.

    这是必不可少的命令,因为它使您可以使用单个命令来启动系统范围的升级。

    But the above command will only upgrade non-critical packages. If there’s a kernel update available, we’ll need to perform a full system upgrade using the following command:

    但是上面的命令只会升级非关键软件包。 如果有可用的内核更新,则需要使用以下命令执行完整的系统升级:

    
    sudo apt full-upgrade
    

    The above command will upgrade the Linux kernel along with any system critical packages that weren’t upgraded with the previous command. You will generally need a restart after a full-upgrade so the new kernel boots up.

    上面的命令将升级Linux内核以及所有未使用先前命令升级的系统关键软件包。 全面升级后,通常需要重新启动,以便启动新内核。

    6.搜索包 (6. Searching for a package)

    The apt search command is the most common command used to search for packages on Ubuntu. It is designed to search the package name along with its metadata such as the description, dependencies, source and version.

    apt search命令是用于在Ubuntu上搜索软件包的最常用命令。 它旨在搜索包名称及其元数据,例如描述,依赖项,源和版本。

    The command returns all the packages whose name or metadata matches the specified search keyword. Following is the syntax for searching a package using the apt search command.

    该命令返回名称或元数据与指定搜索关键字匹配的所有软件包。 以下是使用apt search命令搜索软件包的语法。

    
    sudo apt search [keyword]
    

    结论 (Conclusion)

    Linux based systems utilize packages for installing and running all kinds of applications and services. This makes it essential for a Linux user to be able to manage and keep a note of all the available packages in their local repository.

    基于Linux的系统利用软件包来安装和运行各种应用程序和服务。 这使得Linux用户必须能够管理和记录本地存储库中所有可用软件包的记录。

    The dpkg is difficult to navigate even for experienced Linux users. Hence the Advanced Package Tool is cherished as a valuable tool to help people interact with the packages in their repositories.

    即使对于有经验的Linux用户,dpkg也很难导航。 因此,高级软件包工具被视为一种有价值的工具,可以帮助人们与存储库中的软件包进行交互。

    This tutorial aimed at getting you up and running with the command. If you have any feedback, feel free to reach out to us in the comments below.

    本教程旨在使您入门并使用该命令。 如果您有任何反馈意见,请随时通过以下评论与我们联系。

    翻译自: https://www.journaldev.com/41725/apt-command-tutorial

    apt apt 用法

    展开全文
  • 网络信息安全之APT攻击

    千次阅读 2022-04-02 15:13:47
    当今,网络系统面临着越来越严重的安全挑战,在众多的安全挑战中,一种具有组织性、特定目标以及长时间持续性的新型网络攻击日益猖獗,国际上常称之为APT(Advanced Persistent Threat高级持续性威胁)攻击。

    一、什么是APT攻击

    当今,网络系统面临着越来越严重的安全挑战,在众多的安全挑战中,一种具有组织性、特定目标以及长时间持续性的新型网络攻击日益猖獗,国际上常称之为APT(Advanced Persistent Threat高级持续性威胁)攻击
    APT攻击是一种以商业或者政治目的为前提的特定攻击,其通过一系列具有针对性的攻击行为以获取某个组织甚至国家的重要信息,特别是针对国家重要的基础设施和单位开展攻击,包括能源、电力、金融、国防等等。APT攻击常常采用多种攻击技术手段,包括一些最为先进的手段和社会工程学方法,并通过长时间持续性的网络渗透,一步步的获取内部网络权限,此后便长期潜伏在内部网络,不断地收集各种信息,直至窃取到重要情报。
    对于APT攻击比较权威的定义是由美国国家标准与技术研究所( NIST)提出的,该定义给出了APT攻击的4个要素,具体如下。
    (1)攻击者:拥有高水平专业知识和丰富资源的敌对方。
    (2)攻击目的:破坏某组织的关键设施,或阻碍某项任务的正常进行。
    (3)攻击手段:利用多种攻击方式,通过在目标基础设施上建立并扩展立足点来获取信息。
    (4)攻击过程:在一个很长的时间段内潜伏并反复对目标进行攻击,同时适应安全系统的防御措施,通过保持高水平的交互来达到攻击目的。

    二、APT攻击过程

    一般APT攻击过程可概括为3个阶段:攻击前准备阶段、攻击入侵阶段和持续攻击阶段,又可细分为5个步骤:情报收集、防线突破、通道建立、横向渗透、信息收集及外传
    APT攻击过程

    1.情报收集

    在实施攻击之前,攻击者会针对特定组织的网络系统和相关员工展开大量的信息搜集。信息搜集方法多种多样,通常包括搜索引擎、爬网系统、网络隐蔽扫描、社会工程学方法等方式。信息来源包括相关员工的微博、博客、社交网站、公司网站,甚至通过某些渠道购买相关信息(如公司通讯录等)。攻击者通过对这些信息的分析,可以清晰地了解攻击目标所使用的应用、防御软件,组织内部架构和人员关系,核心资产存放情况等等。于是,攻击者针对特定目标(一般是内部员工)所使用的应用软件寻找漏洞,并结合特定目标所使用的杀毒软件、防火墙等设计特定木马/恶意代码以绕过防御。同时,攻击者搭建好入侵服务器,开展技术准备工作。

    2.防线突破

    攻击者在完成情报收集和技术准备后,开始采用木马/恶意代码攻击特定员工的个人电脑,攻击方法主要有:①社会工程学方法,如电子邮件攻击,攻击者窃取与特定员工有关系的人员(如领导、同事、朋友等)电子邮箱,冒充发件人给该员工发送带有恶意代码附件的邮件,一旦该员 工打开附件,员工电脑便感染了恶意软件。②远程漏洞攻击方法,如网站挂马攻击,攻击者在员工常访问的网站上放置木马,当员工再次访问该网站时,个人电脑便受到网页代码攻击。由于这些恶意软件针对的是系统未知漏洞并被特殊处理,因此现有的杀毒软件和防火墙均无法察觉,攻击者便能逐渐获取个人电脑权限,最后直至控制个人电脑。

    3.通道建立

    攻击者在突破防线并控制员工电脑后,在员工电脑与入侵服务器之间开始建立命令控制通道。通常,命令控制通道采用HTTP/HTTPS等协议构建,以突破电脑系统防火墙等安全设备。一旦攻击者完成通道建立,攻击者通过发送控制命令检查植入的恶意软件是否遭受查杀,并在恶意软件被安全软件检测到前,对恶意软件进行版本升级,以降低被发现的概率。

    4.横向渗透

    入侵和控制员工个人电脑并不是攻击者的最终目的,攻击者会采用口令窃听、漏洞攻击等多种渗透方法尝试进一步入侵组织内部更多的个人电脑和服务器,同时不断地提升自己的权限,以求控制更多的电脑和服务器,直至获得核心电脑和服务器的控制权。

    5.信息收集及外传

    攻击者常常长期潜伏,并不断实行网络内部横向渗透,通过端口扫描等方式获取服务器或设备上有价值的信息,针对个人电脑通过列表命令等方式获取文档列表信息等。攻击者会将内部某个服务器作为资料暂存的服务器,然后通过整理、压缩、加密、打包的方式,利用建立的隐蔽通信通道将信息进行外传。在获取这些信息后,攻击者会对这些信息数据进行分析识别,并做出最终的判断,甚至实施网络攻击破坏。

    三、APT攻击和传统攻击的区别

    APT攻击具有不同于传统网络攻击的5个显著特征:针对性强、组织严密、持续时间长、高隐蔽性和间接攻击。
    1.针对性强
    APT攻击的目标明确,多数为拥有丰富数据/知识产权的目标,所获取的数据通常为商业机密、国家安全数据、知识产权等。
    相对于传统攻击的盗取个人信息,APT攻击只关注预先指定的目标,所有的攻击方法都只针对特定目标和特定系统,针对性较强。
    2.组织严密
    APT攻击成功可带来巨大的商业利益,因此攻击者通常以组织形式存在,由熟练黑客形成团体,分工协作,长期预谋策划后进行攻击。他们在经济和技术上都拥有充足的资源,具备长时间专注APT研究的条件和能力。
    3.持续时间长
    APT攻击具有较强的持续性,经过长期的准备与策划,攻击者通常在目标网络中潜伏几个月甚至几年,通过反复渗透,不断改进攻击路径和方法,发动持续攻击,如零日漏洞攻击等。
    4.高隐蔽性
    APT攻击根据目标的特点,能绕过目标所在网络的防御系统,极其隐藏地盗取数据或进行破坏。在信息收集阶段,攻击者常利用搜索引擎、高级爬虫和数据泄漏等持续渗透,使被攻击者很难察觉;在攻击阶段,基于对目标嗅探的结果,设计开发极具针对性的木马等恶意软件,绕过目标网络防御系统,隐蔽攻击。
    5.间接攻击
    APT攻击不同于传统网络攻击的直接攻击方式,通常利用第三方网站或服务器作跳板,布设恶意程序或木马向目标进行渗透攻击。恶意程序或木马潜伏于目标网络中,可由攻击者在远端进行遥控攻击,也可由被攻击者无意触发启动攻击。

    对比内容传统攻击APT攻击
    攻击者特征个体或小组织网络犯罪分子全球性、有组织、有纪律的不法团体、公司、敌对者
    攻击目标随机性选择攻击,通常以个体为主,以达到获取金钱、盗窃身份、欺诈等特定攻击目标,通常针对国家安全信息、重要行业商业机密信息等
    攻击手段攻击手段比较单一,常基于已有的恶意软件展开攻击攻击手段复杂,形式多样,结合0day攻击、特种木马攻击、社会工程学等展开攻击
    攻击时间攻击时间较短,以一次性、大范围攻击为主攻击时间较长,长期潜伏、多次渗透攻击
    攻击痕迹攻击特性很强,容易在较短时间内被检测和捕获攻击特征弱,比较隐蔽,缺少样本数据,很难被检测和捕获

    四、如何防范APT攻击

    随着人们对APT攻击的研究不断深入,已经出现一些有效的防御技术来对抗APT攻击,其核心思想大多是针对APT“攻击链”的某一步骤展开防御。这些技术主要包括:沙箱技术、信誉技术、异常流量分析技术、大数据分析技术等等。

    1.沙箱技术

    沙箱,又叫做沙盘,被认为是当前防御APT攻击的最有效技术之一。沙箱即是通过虚拟化技术形成一个模拟化的环境,同时将本地系统中的进程对象、内存、注册表等与模拟环境相互隔离,以便在这个虚拟化环境中测试和观察文件、访问等运行行为。沙箱通过重定向技术,将测试过程中生成和修改的文件定向到特定文件夹中,避免了对真是注册表、本地核心数据等的修改。当APT攻击在改虚拟环境发生时,可以及时地观察并分析其特征码,进一步防御其深入攻击。

    2.信誉技术

    安全信誉是对互联网资源和服务相关实体安全可信性的评估和看法。信誉技术是应用于APT攻击检测具有较好辅助功能的一项技术,通过建立信誉库,包括WEB URL信誉库、文件MD5码库、僵尸网络地址库、威胁情报库等,可以为新型病毒、木马等APT攻击的检测提供强有力的技术辅助支撑,实现网络安全设备对不良信誉资源的阻断或过滤。信誉库的充分利用,将进一步提高安全新品的安全防护能力。

    3.主机漏洞防护技术

    针对横向移动与内部资料进行挖掘和探测的防御,可采用主机漏洞防护技术,能侦测任何针对主机漏洞的攻击并加以拦截,进而保护未修补的主机。这类解决方案可实现档案 / 系统一致性监控,保护未套用修补程序的主机,防止已知和0day 漏洞攻击。

    4.异常流量分析技术

    这是一种流量检测及分析技术,其采用旁路接入方式提取流量信息,可以针对帧数、帧长、协议、端口、标识位、IP路由、物理路径、CPU/RAM消耗、宽带占用等进行监测,并基于时间、拓扑、节点等多种统计分析手段,建立流量行为轮廓和学习模型来识别流量异常情况,进而判断并识别0Day漏洞攻击等。

    5.数据防泄漏技术(DLP)

    针对资料外传的风险,一般可采用加密和资料外泄防护 (DLP)技术,将关键、敏感、机密的数据加密,是降低数据外泄风险的一种方法,DLP 可提供一层额外的防护来防止数据外泄。然而,这类工具通常很复杂,而且有些部署条件,例如:数据要分类,要定义政策和规则等。

    6、大数据分析技术

    APT攻击防御离不开大数据分析技术,无论是网络系统本身产生的大量日志数据,还是SOC安管平台产生的大量日志信息,均可以利用大数据分析技术进行大数据再分析,运用数据统计、数据挖掘、关联分析、态势分析等从记录的历史数据中发现APT攻击的痕迹,以弥补传统安全防御技术的不足。

    我们熟知的APT防御产品主要针对的都是APT攻击链上的某个环节来展开防御,目前来说这是远远不够的。APT攻击防御应该是覆盖APT攻击所有环节,未来发展的趋势,是需要构建基于APT攻击链的多层次、多维度、多角度的纵深防御体系,如态势感知平台等。


    博客:http://xiejava.ishareread.com/

    展开全文
  • aptapt-get的区别(建议使用apt

    万次阅读 多人点赞 2019-01-23 22:09:43
    Ubuntu 16.04 发布时,一个引人注目的新特性便是 apt 命令的引入。其实早在 2014 年,apt 命令就已经发布了第一个稳定版,只是直到 2016 年的 Ubuntu 16.04 系统发布时才开始引人关注。 随着 apt install ...
  • 在之前的文章中,我们查看了APT 命令以及您可以使用包管理器来管理包的各种方法。这是一个总体概述,但在本指南中,我们暂停并重点关注 2 个命令用法。这些是apt update和apt upgrade命令。 apt update 和 apt ...
  • APT攻击检测与防御详解

    万次阅读 多人点赞 2019-01-20 17:51:58
    APT定义 APT(Advanced Persistent Threat)是指高级持续性威胁,本质是针对性攻击。 利用先进的攻击手段对特定目标进行长期持续性网络攻击的攻击形式,APT攻击的原理相对于其他攻击形式更为高级和先进,其高级性...
  • linux中的apt命令

    千次阅读 2021-08-04 07:55:37
    apt是Advanced Package Tool的简写,是工作于Debian, Ubuntu等相关linux发行版上的软件包管理系统。apt在类Unix操作系统上提供如自动检索、配置和安装软件包等功能来简化软件的管理。 `apt`整合了`apt-get`和`apt-...
  • 简介:apt命令在ubuntu下找不到。(针对云平台,等可联网的ubuntu 如果是虚拟机,请确认能否联网 (如是虚拟机且不能联网请参考其他文章,大致方向是先挂载系统镜像再安装))(ps:一般的ubuntu默认是有apt命令的也有...
  • Ubuntu使用apt管理安装软件包

    千次阅读 2022-03-01 09:14:30
    一、apt简介 apt 是 Advanced Packaging Tool 的简称,是一款安装包管理工具。在 Ubuntu 下,我们可以使用 apt 命令可用于软件包的安装、删除、清理等,类似于 Windows 中的软件管理工具。 二、apt管理...
  • 什么是APT攻击

    千次阅读 2021-10-21 17:33:51
    什么是APT攻击 APT是黑客以窃取核心资料为目的,针对客户所发动的网络攻击和侵袭行为,是一种蓄谋已久的“恶意商业间谍威胁”。这种行为往往经过长期的经营与策划,并具备高度的隐蔽性。APT的攻击手法,在于隐匿自己...
  • Ubuntu设置apt

    千次阅读 2022-05-12 13:08:41
    1.打开 vim /etc/apt/sources.list 2.添加清华源。 对应ubuntu版本清华源可在https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/找到。 在sources.list最后加入对应系统版本的源地址。如:18.04的地址为 # 默认注释...
  • 显示行号|选择喜欢的代码风格默认GitHubDuneLakeSidePlateauVibrantBlueEightiesTranquilapt-get 命令是 Debian Linux 发行版中的 APT 软件包管理工具apt-get 命令安装:-bash: apt-get: command not found#Debian...
  • Ubuntu配置apt的国内源地址

    千次阅读 2021-04-30 09:44:43
    sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak 修改配置文件 配置文件路径 /etc/apt/sources.list ubuntu 20.04(focal) 配置如下 sudo tee /etc/apt/sources.list <<-'EOF' deb ...
  • centos7安装apt

    千次阅读 2021-12-01 16:06:20
    centos7安装apt 搜索并下载对应版本:rpmforge-release (下载地址:https://www.rpmfind.net/linux/rpm2html/search.php?query=rpmforge-release) 执行安装命令->对应的包名 rpm -i rpmforge-release-0.5.3-1....
  • ubuntu16.04系统制作本地apt

    千次阅读 2021-11-08 10:57:43
    这就面临一个问题,开源包依赖很多的linux依赖库,同时不能保证外部使用环境一定联网,稳妥的办法就是把所有依赖包都打到安装包中,此时便需要制作ubuntu的apt本地源 2.概述 1)ubuntu中的apt源由配置文件驱动,...
  • 完美卸载Apt

    千次阅读 2022-01-31 09:49:03
    当发布Docker新版本时,可以使用sudo apt update && sudo apt upgrade命令来更新软件包。 如果要阻止更新Docker软件包,请将其标记为保留,运行以下命令: sudo apt-mark hold docker-ce 在Ubuntu 20.04...
  • A novel approach for APT attack detection based on combined deep learning model Do Xuan, C., Dao, M.H. A novel approach for APT attack detection based on combined deep learning model. Neural Comput &...
  • linux使用apt命令下载软件和依赖包

    千次阅读 2021-12-21 18:31:07
    apt下载软件及其依赖包 总共两步:下载软件包,下载依赖包 以下以ntp及其依赖包为例 1.cd /var/cache/apt/archives/ 2.执行sudo apt download ntp ,仅下载ntp安装包 3.执行下面命令下载ntp依赖包 sudo apt-get ...
  • APT攻击介绍

    千次阅读 2020-07-16 11:38:38
    APT攻击介绍
  • APT 下载工具

    千次阅读 2021-08-27 16:40:47
      APT 下载工具可以实现软件自动下载、配置、安装二进制或者源码的功能。 APT 下载工具install命令结合在一起构成了 Ubuntu 下最常用的下载和安装软件方法。它解决了 Linux 平台下安装软件的一个缺陷,即软件之间...
  • aptapt-get区别

    千次阅读 2020-04-20 10:28:12
    aptapt-get区别 apt可以看作apt-get 和apt-cache 命令的子集可以为包管理提供必要的命令选项。 apt-get虽然没被弃用,但作为普通用户,还是应该首先使用apt。 注: apt install和apt-get install 功能一-样 ,都是...
  • linux环境下用apt install yum

    千次阅读 2021-09-09 15:33:16
    一、安装 1. 下载yum安装包并解压 wget ... tar xvf yum-3.2.28.tar.gz 2. 进入目录并install cd yum-3.2.28 sudo apt install yum ...1. apt install yum 时报:E: Unable...
  • Ubuntu系统下用apt命令删除/卸载软件包
  • Ubuntu中老牌apt和新人snap

    千次阅读 2021-03-24 11:08:32
    apt和snap ubuntu用apt代替了apt-get,ubuntu的母公司Canonical在最新版的Ubuntu中用snap代替了apt。 类似于yum代替了rpm,而后又使用dnf代替了yum。 [Wed Mar 24 11:05 u20@u20-0-52 ~ ]$ type snap snap is /usr/...
  • linux apt 安装命令

    千次阅读 2022-04-01 10:15:08
    ubuntu apt 安装命令 apt 安装 # 安装软件 sudo apt install 软件包 # 卸载软件 sudo apt remove 软件包 # 更新软件 sudo apt upgrade # 例如 sudo apt install sl sudo apt install htop apt命令类似于(apt-get ...
  • ubuntu apt-get命令安装

    千次阅读 2021-03-26 17:56:16
    apt-cache search # ------(package 搜索包) apt-cache show #------(package 获取包的相关信息,如说明、大小、版本等) apt-get install # ------(package 安装包) apt-get install # -----(package --reinstall ...
  • APT攻击防御措施APT攻击的定义APT攻击的危害APT攻击防御措施 随着移动终端的应用更加广泛、智能化的深入,多元、多源的数据使大数据的发展来到了前所未有的高度,大量的数据交流给了黑客可乘之机,特别是有专业工具...
  • snap vs apt

    千次阅读 2020-04-10 11:25:24
    snap安装和管理软件包,snap vs apt 笔者用了十年的ubuntu,很喜欢用apt-get来安装软件。apt所采用的包是deb包,deb包最初是Debian Linux推出的,由于ubuntu基于debian,ubuntu将其集成到了apt包管理器中,apt可以...
  • Debian的aptapt-get的运用

    千次阅读 2019-10-25 09:46:49
    Debian apt的运用 命令: apt install (package name) 安装一个包 例子: apt install bind9 apt list (package name) 根据包名称列出包 例子: apt list bind9 apt search (package name) 搜索包名 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 731,535
精华内容 292,614
关键字:

apt