tantan的博客

Notes, ideas, and observations

#Leetcode

  • 链表 ✅
  • dp ✅
  • 排列组合 ❓
  • 大数模运算 ❓
  • 图算法 ❓
  • 数论 ❓
  • 字符串 ❓

为什么需要分布式系统

单点故障,分布式增加冗余提高系统的可用性

#2023 回顾

  • 1月: 开源投毒
  • 1-3月: Rust 教材
  • 4-5月: 加入误报消减团队, 投 ASE/ICSE 论文
  • 3,5-10月: 相似代码片段但是有漏洞情况不同 自己搜索, 研究 PDG, Call Graph, LLVM Pass, 函数切片, 错过 FSE
  • 7-11月: 参加 GLCC 开源活动
  • 8-12月: 搞浦发银行的项目

#概述

LLVM is a Static Single Assignment (SSA) based representation that provides type safety, low-level operations, flexibility, and the capability of representing ‘all’ high-level languages cleanly

#基本使用

  1. 修改程序源码,在合适的地方插入符号值

#编译项目,插桩

1
2
3
4
5
6
7
8
9
#!/bin/sh
set -e

export CC=afl-clang-fast
export CXX=afl-clang-fast++

./configure --enable-shared=no --enable-static=yes
make -j 32

#成为 CA!

1
2
3
4
5
# Generate private key
openssl genrsa -des3 -out myCA.key 2048
# Generate root certificate
openssl req -x509 -new -nodes -key myCA.key -sha256 -days 825 -out myCA.pem \
-subj "/C=CN/ST=Shanghai/L=Shanghai/O=/OU=/CN=My first CA"
0%