记录一次服务器中挖矿病毒

今天打开宝塔面板突然注意到cpu占用100%,顿时感觉不正常,赶紧top看了下后台进程。

果然有个叫xmrig的进程占用cpu100%。网上一查,果然,这是个门罗币挖矿工具,想不到我这小破服务器也会中招。好在这机器上没什么重要文件,就当是借此机会学习下病毒程序是如何攻破服务器的,升级下服务器的安全防护措施吧。

阅读更多

Caddy配置指南


下载安装

从Github的release页下载相应操作系统的最新版本,使用dpkg安装

1
2
wget https://github.com/caddyserver/caddy/releases/download/v2.7.6/caddy_2.7.6_linux_amd64.deb
sudo dpkg -i caddy_2.7.6_linux_amd64.deb

验证是否正确安装

  1. 二进制文件位置

    1
    2
    which caddy
    # /usr/bin/caddy
阅读更多

交叉编译lrzsz串口传输工具及踩坑过程

嵌入式Linux开发的过程中传输文件是个挺麻烦的事,主要有三种方式:

  1. SD卡拷贝(需要反复插拔,mount/umount比较麻烦)
  2. TFTP网络传输(速度快,但需要网线)
  3. 串口传输(无需额外接口,但速度很慢)

本文主要介绍君正T40平台上使用串口传输文件的方式。

阅读更多
静态资源加速,寻找jsdelivr的替代品

静态资源加速,寻找jsdelivr的替代品

jsdelivr是一个大名鼎鼎的静态资源cdn加速平台,以他免费高速支持github文件的特点而备受欢迎。本站也引用了大量的jsDelivr的资源,而从去年年底开始,我就发现本站访问速度异常缓慢,经查,来自cdn.jsdelivr.net的js/css等静态资源大量请求失败。全国ping下来竟然大半超时,论坛上看到说是备案被吊销了,官方推特也证实了这一点。

阅读更多

机器学习模型常见漏洞

数据投毒——伪造点击强加关联,污染推荐算法;投入噪声图像(图案、光照)

模型后门——大量输入图像上有无关特征“点”

模型窃取——大量调用已部署的模型,拟合出近似模型

ctf工具集

nmap

nmap是一款开源免费的网络发现和安全审计工具。软件名字Nmap是Network Mapper的简称。Nmap最初是由Fyodor在1997年开始创建的。随后在开源社区众多的志愿者参与下,该工具逐渐成为最为流行安全必备工具之一。

hashcat

hashcat是自称世界上最快的密码恢复工具。适用于Linux,OS X和Windows的版本可以使用基于CPU或基于GPU的变体。支持hashcat的散列算法有Microsoft LM哈希,MD4,MD5,SHA系列,Unix加密格式,MySQL和Cisco PIX等

Wireshark

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

Audacity

Audacity是一款非常实用的音频编辑软件,通过该款软件,用户能够非常便捷的进行录音、播放、输入输出WAB、AIFF、Ogg Vorbis和MP3文件等操作,并且还支持大部份常用的工具,如剪裁、贴上、混音、升/降音以及变音特效等。

sqlmap

sqlmap是一个自动化的sql注入工具,其主要功能是扫描、发现并利用给定URL的SQL注入漏洞,内置了很多绕过插件,支持的数据库有MySQL, Oracle,PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird,Sybase和SAP MaxDB。

Burp Suite

Burp Suite是用于攻击web 应用程序的集成平台,包含了许多工具。Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP 消息、持久性、认证、代理、日志、警报。

HxD

HxD - Freeware Hex Editor and Disk Editor,十六进制编辑器

quipqiup

quipqiup is a fast and automated cryptogram solver by Edwin Olson. It can solve simple substitution ciphers often found in newspapers, including puzzles like cryptoquips (in which word boundaries are preserved) and patristocrats (inwhi chwor dboun darie saren t).

通过词频分析法,解密替换字母加密文本工具。

TweakPNG

TweakPNG是一个互动的PNG文件编辑器实用工具,它允许您查看和修改一些PNG图像文件的元信息存储。这是不是一个真正的图像编辑器或浏览器。TweakPNG包括一个简单的图像浏览器,但它只能被动地显示当前状态的文件。

Go语言学习笔记

Hello world

1
2
3
4
5
6
package main
import "fmt"

func main() {
fmt.Println("hello")
}
  • package main表示一个可独立执行的程序,main函数必须写在main包里,每个 Go 应用程序都包含一个名为 main 的包
  • {不能换行
  • 输入go run hello.go运行,go build hello.go编译
阅读更多

Paxos分布式理论学习

当有一系列提议者提出值时,为保证一致性,需要满足以下条件:

  1. 被选中的值必须是已经被提出的
  2. 每次只能有一个值被选中
  3. 一个值真实被选中前,不可提前知道结果
阅读更多

LeetCode刷题技巧

春招季过了,在此整理下刷LeetCode题时常用的技巧,以及一些常见题型。

C++/Java/Python 刷题常用技巧

C++

万能头文件

1
#include <bits/stdc++.h>
阅读更多
记字节跳动校招一面

记字节跳动校招一面

字节跳动的校招系统做的还是不错的,可以选择2个部门(但以第一志愿为主),上午报完名,下午就来电话约一面时间了。

面试用的牛客的面试平台,网页端视频面试,面试总体感受是面试官比较随意,上来就说过完年好久没面过了,都不知道怎么面。。。

面试主要流程还是:

  • 自我介绍
  • 项目经历 & 专业知识考察
  • 编码考察
  • 候选人Q&A

字节跳动-数据平台官方面试手册


阅读更多
今天你体温上报了吗?

今天你体温上报了吗?

沉寂一个学期后,终于有空折腾点东西了。不知不觉每天起床第一件事——健康打卡已经快一年了。下至-274℃上至9999999999999℃,都无人过问,有时忘了打卡还要被不停的催。身为程序猿怎么能忍受此般形式主义每天霸占我宝贵的1分钟!(所以我花了两天时间写了这个程序)

下面步入整体,本来我觉得这不就抓个包每天定时发送就行了吗。然而事情并没有想象中那么简单,这个登录状态每天都会失效,所以不能存个cookie就完事。一番研究下,学校的登录认证系统还有点东西。应该是采用客户端cookie+服务端session的方式。

阅读更多
最优化问题求解及Lingo教程
python模块相对路径引用错误处理
python正则用法整理
matplotlib绘图基本操作&美化教程
Github+jsDelivr+Coding 免费高速稳定图床get!

Github+jsDelivr+Coding 免费高速稳定图床get!

图床一直是影响博客撰写体验的重要工具,之前我一直用的是sm.ms图床,配合Typora的图片上传功能,可谓写作体验极佳。sm.ms图床虽然才成立没几年,但作为免费图床,自带https,免账号上传,注册就有有后台管理,就已经吊打不少家了。总体而言,他的速度还算不错,但免不了有时候抽风,而且毕竟一小厂,现在又近乎用爱发电,万一哪天跑路了,博客里挂着的那些图岂不全没了。所以既想有稳定的体验,又想免费白嫖,可谓鱼和熊掌不可兼得啊。

不过最近我还真就发现了这近乎完美的解决方案。用GitHub作为存储,jsDelivr作为CDN加速,如有必要,还可加上国内的Coding作为跳板,提升稳定性。

首先这几个都是大厂完全不必担心跑路。GitHub就不必说了,jsDelivr由ProspectOne维护的公共库,免费提供了npm和GitHub仓库的静态文件加速服务,可以说非常的良心,而且它在中国大陆也有数百个节点,可以说访问速度极佳,一张3mb的图片加载速度不到1秒钟!

之所以我还多用了个腾讯的Coding,是因为国内的GitHub访问真的太不稳定了,上传失败的概率非常高。虽然Coding有放外链机制,速度也不是很快,但不妨让他做个跳板,帮我们自动把图片同步到GitHub仓库。

阅读更多
Pandas数据分析常用操作整理

记一次服务器迁移

用了一年的DigitalOcean终于到期了,服务器配置还是不错的,只是这网速真的是一言难尽,才用了没多久,后台面板都没办法直连了,服务器出故障了强制重启还只能另寻他路登录后台。。。不过这5刀一年近乎白嫖还要啥自行车?

在服务器到期前赶紧物色下一台小鸡,看了不少评测网站,最终选择了一款极具性价比的极光VPS,优惠后1H1G30Mbps一年只要200块!美西CN2线路和香港CMI线路都挺不错的,带宽也够大,用了1个多月来香港线路还是比较稳定的,平均延时只有50ms左右,太香了!虽说国内小厂有跑路风险,但自用挂个博客站在偶尔挂点测试站足够了,配置下自动备份到谷歌云,也不怕他跑路了。

阅读更多

Flume安装与应用

Flume概述

  • 日志采集和汇总工具
  • 收集到的日志数据汇总到HDFS存储
  • flume: 1.9.0

Flume组件

  • source:数据源(需要采集的数据)
  • channel:临时存储的数据位置,通常存储在内存
  • sink:数据目标存储,hdfs
阅读更多

网络数据采集与存储

网络访问工具

  • 访问工具:浏览器
  • 测试工具:postman
  • 编程实现:apache httpclient
  • 响应返回的也买你数据解析
    • jsoup实时页面数据解析
    • document对象数据抽取
  • 抓包工具:Charles
  • :warning:注意
    • 多线程
    • 无间断

实现功能

  • httpclient发送请求访问豆瓣电影Top250
  • html, jsoup, 字符串
阅读更多

搭建hadoop分布式环境

安装环境

  • CentOS 8
  • JDK:1.8_231
  • hadoop:3.2.1

主机准备

  • 主机名:hadoop

  • vi /etc/hostname

  • 主机名与IP地址映射:

    1
    2
    vi /etc/hosts
    IP地址 hadoop
  • 防火墙关闭

    1
    systemctl status firewalld
  • 创建hadoop用户

    1
    2
    useradd hadoop
    passwd hadoop
  • hadoop用户环境变量,配置JDK; /home/hadoop/.bash_profile

阅读更多

Ajax编程应用及Nginx部署

Ajax异步请求

  • 前后端分离
    • 发送异步请求获取接口数据(Vue/axios)
    • 请求跨域问题@CrossOrigin
  • 部署服务器
    1. 前端部署:nginx
    2. 后端接口服务,nohup java -jar xxx.jar &

Ajax特点

  • 允许在同一页面中多次发送请求,并动态加载服务器数据至页面中
  • 可以有效地避免页面的频繁刷新
  • image-20200707090233216
阅读更多

MySQL数据库搭建

MySQL安装

  1. 安装信息

    • 操作系统:centos8
    • MySQL版本:8.0.19
    • 安装方式:rpm
  2. 安装

    • 上传安装文件到服务器
    • 使用root用户安装,自动创建mysql用户

    • 客户端

    1
    2
    3
    rpm -ivh mysql-community-common-8.0.19-1.el8.x86_64.rpm 
    rpm -ivh mysql-community-libs-8.0.19-1.el8.x86_64.rpm
    rpm -ivh mysql-community-client-8.0.19-1.el8.x86_64.rpm
    • 服务端

      1
      rpm -ivh mysql-community-server-8.0.19-1.el8.x86_64.rpm
阅读更多

虚拟机环境配置

课程内容

  • Linux操作系统(VirtualBox、CentOS)
  • MySQL数据库
  • Spring Boot开发环境
  • Ajax编程(Vue/Axios)
  • 企业应用部署(Nginx/jar/负载)
  • hadoop分布式环境
  • hdfs常用命令/管理命令
  • Java应用访问hdfs数据
  • HttpClient工具应用
  • jsoup页面解析
  • logback日志存储
  • flume日志采集工具
  • Hive数据仓库
  • Sqoop数据迁移工具
阅读更多

Git学习笔记

提交代码

  1. 本地初始化环境
    • git init
  2. 创建服务关联到仓库
    • git remote add duckfarm http://username:password@xxxx.git
  3. 拉取服务器仓库的环境
    • git pull --rebase duckfarm master
  4. 创建分支
    • git branch localbranch
  5. 在分支中工作
    • git checkout localbranch
  6. 提交分支的文件到本地仓库
    • 暂存 git add .
    • 提交 git commit -a -m "Day 0 Note"
  7. 同步本地代码到服务器仓库
    • git push --set-upstream duckfarm localbranch
阅读更多