ARTS:
- Algrothm: leetcode算法题目
- Review: 阅读并且点评一篇英文技术文章
- Tip/Techni: 学习一个技术技巧
- Share: 分享一篇有观点和思考的技术文章
Algorithm
【leetcode】107. 二叉树的层次遍历 II
https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/
1)problem
给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)
例如:
给定二叉树[3,9,20,null,null,15,7]
,
3
/ \
9 20
/ \
15 7
返回其自底向上的层次遍历为:
[
[15,7],
[9,20],
[3]
]
2)answer
在自顶向下每次层次遍历完成时将此层的遍历结果插入到结果list里,然后函数返回逆序返回。
3)solution
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def levelOrderBottom(self, root: TreeNode) -> List[List[int]]:
if root is None:
return []
result, current = [],[root]
while current:
next_level, vals = [], []
for node in current:
vals.append(node.val)
if node.left:
next_level.append(node.left)
if node.right:
next_level.append(node.right)
current = next_level
result.append(vals)
return result[::-1]
Review
【漏洞挖掘】对 Watchbog Botnet 渗透过程和 Payload 的分析
1)场景
僵尸网络里的漏洞利用
2)问题难点
传播类漏洞都是些什么
3)解决问题的方法
漏洞利用
Watchbog在做什么?
通过SSH进行横向移动
通过JENKINS和REDIS服务器进行横向移动
持久性机制
受害者机器上的Payload
挖掘和持久性
IOC
安全建议
参考
4)方法细节
对 Watchbog Botnet 渗透过程和 Payload 的分析
https://www.cnblogs.com/17bdw/p/11515944.html
Tip
【安全开发】xray写POC踩坑
1)场景
扫描器写POC应该注意的事项
2)问题难点
写出精准可利用的POC
3)解决思路
错误记录
NodeJS_path-validation_CVE-2017-14849.yml
Rails_file_content_disclosure_CVE-2019-5418
thinkphp5-in-sqlinjection
zabbix_3.0.3_jsrpc.php_CVE-2016-10134
4)方法细节
xray写POC踩坑
https://www.cnblogs.com/17bdw/p/11515741.html
Share
【业务】shell每隔一秒钟就记录下netstat状态
1)场景
监控Linux主机外联
2)问题难点
应急响应监控Linux主机外联情况
3)解决思路
说明
代码
4)方法细节
shell每隔一秒钟就记录下netstat状态
https://www.cnblogs.com/17bdw/p/11495108.html