自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小勇的博客

学会分享

  • 博客(79)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 常见排序算法总结和 Go 标准库排序源码分析

文章目录前言排序算法分类比较类排序算法选择排序冒泡排序插入排序希尔排序归并排序快速排序堆排序算法复杂度比较Go 标准库排序源码分析不稳定排序稳定排序排序 example总结参考前言排序算法是数组相关算法的基础知识之一,它们的经典思想可以用于很多算法之中。这里详细介绍和总结 7 种最常见排序算法,并用 Go 做了实现,同时对比这几种算法的时间复杂度、空间复杂度和稳定性 。后一部分是对 Go 标准库排序实现的源码阅读和分析, 理解官方是如何通过将以上排序算法进行组合来提高排序性能,完成生产环境的排序实践。

2021-03-18 23:51:10 372

原创 Go 的容器数据结构

Go的容器数据结构前言容器container/listcontainer/ringcontainer/heap小结参考前言Java 内置了丰富的容器类,不同容器用于处理各种业务场景。 Go 虽然语言设计上和 Java 有很多相似的地方, 但原生并没有支持太多容器类的数据结构,只有 map 和 slice。标准库的 container package 对容器数据结构做了扩展,支持堆(Heap)、链表(LinkedList) 和循环链表(Circular List)3个容器。容器熟悉 C++ 和 Ja

2021-03-13 18:08:06 319

原创 如何校验 email 地址以提高邮件送达率

背景在发送 email 的时候,如果邮件收件人是一个不存在的 email 账号、或者收件人账号存在问题、收件箱无法接收 email, 那么 email server 就会将该无法接收的信息响应回来, 这种情况称之为 bounce email,对应的衡量指标是 bounce 率。bounce email 是影响邮件送达率(email delivery rate)的一个重要因素。根据 Sendgrid 统计结果, bounce 率在 5% 以上,送达率为71%;但如果 bounce 率在2%或以下,平均送

2020-12-21 21:26:49 2324 2

原创 【推荐】一个 LeetCode 答题看板的生成插件

hugo-leetcode-dashboard✨ 一个 LeetCode 答题看板的生成插件, 支持一键部署到 Hugo 站点。 完整记录刷题的心路历程 ✨项目地址: hugo-leetcode-dashboard在线预览 DemoScreenshotsInstallation下载 Repo 到本地:git clone https://github.com/lryong/hugo-leetcode-dashboard安装依赖: 本项目需要用到 requests 和 aioht

2020-07-15 22:07:31 425

原创 从菜鸟教程网站(www.runoob.com)上下载所有入门教程

git地址:[email protected]:lryong/tutorials-from-runoob.git这个爬虫是大三的时候刚学习编程的时候写的,今天整理github的时候发现代码有bug就把它update了。实现了从菜鸟教程网站下载所有的教程,并且离线教程支持流式阅读(个人比较懒= =,也比较习惯pdf电子书的阅读风格),后期可能想把html的格式都转换成pdf了。自己做的小项目,很适合初...

2018-10-02 01:15:43 14605 6

原创 制定Golang的Emacs配置

最近在学习Emacs,跟vim差别真的很大。作为Emacs的初学者,还是能够感觉到”神之编辑器和编辑器之神的区别”的。配置环境是参考其他人的,然后做了一些个人开发习惯的修改;作为Emacs小白,自己对emacs配置文件的制定难免会有不足和错误。虽然我知道Emacs门槛很高(个人觉得比vim高很多),用的人不多,但我觉得现在社区应该有一些适合于emacs新人的友好入门配置。我是写Golang的,...

2018-07-22 23:22:28 1550

原创 普通用户添加到sudo属组

一般普通用户在使用sudo提权执行命令的时候需要在特定的权限属组里,新用户要使用sudo特定功能可以先通过root编辑 visudo然后在类似 root ALL=(ALL:ALL) ALL 这一行下面添加 XXX ALL=(ALL:ALL) ALL(或ALL改为其他权限组)这是危险操作!!!...

2018-07-14 22:00:34 871

原创 SSH客户端普通用户无法tab补全命令问题

/etc/passwd文件中的指定的shell应该为bash,将sh修改为bash即可,修改后使用tab正常。

2018-06-07 13:10:06 7560

原创 YouCompleteMe支持Clang(一)

进入vim插件文件夹里面的YCM目录中: cd ~/.vim/plugged/YouCompleteMe/third_party/ycmd/cppcmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .makemake buildmake install

2018-06-06 18:34:34 1091

原创 CentOS6.4安装Golang

下载安装Fedora EPEL安装源(有更新不了)。rpm -ivh http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-8.noarch.rpm安装golang的rpm包:yum install -y golang查看golang的安装位置然后定位到golang根文件夹(目录下包含src,pkg,bin)编辑/e...

2018-06-06 18:24:35 245

原创 VIM 配置 Pythonic Golang

项目地址:https://github.com/lryong/vim-config 个人的VIM开发环境配置,主要适配Python开发环境和Golang开发环境。配置简单,只要先将自己根目录下的.vimrc配置先做备份,然后将项目中的vimrc改名为.vimrc复制到根目录下即可。然后打开VIM,会开始自动化一些VIM插件(YCM插件较大)。本项目基于网上分享的vim配置二次修改。具体详见

2017-09-15 08:57:01 356

原创 个人学习Go语言时的代码练习

练习代码地址:https://github.com/lryong/Go_Practices,仅作参考.

2017-07-08 11:43:55 1956 1

原创 Go学习笔记(二)

定义结构体: type struct_variable_type struct { member definition; member definition; ... member definition;}结构体example:// struct_test2.gopackage mainimport ( "fmt")type Book struct {

2017-06-29 10:51:58 507

原创 Go学习笔记(一)

Go语言学习笔记Go语言组成包声明引入包函数变量(当标识符(包括变量,常量类型,函数名结构字段等等)以一个大写字母开头时,可以被外部调用,称为导出)语句&表达式注释在Go程序中,一个语句以一行分隔,而C语言家族使用分号;隔开.标识符用来命名变量、类型等程序实体。一个标识符实际上就是一个或是多个字母(A\~Z和a\~z)数字(0~9)、下划线_组成的序列,但是第一个字符必须是字母或下划

2017-06-27 20:14:49 979

原创 Python面向对象示例代码

Python面向对象示例代码#encoding:utf-8'''example 1class test: def __init__(self,year,**arg): self.year = year self.args = arg def kaka(self): if isinstance(self.year,str):

2017-01-23 11:52:42 1360

原创 Python面向对象

Python面向对象Python内置对象 __dict__ : 类的属性(包含一个字典,由类的数据属性组成)__doc__ :类的文档字符串__name__: 类名__module__: 类定义所在的模块(类的全名是’__main__.className’,如果类位于一个导入模块mymod中,那么className.__module__ 等于 mymod)__bases__ : 类的所有

2017-01-23 11:49:58 428

原创 爬取学校教务系统上的成绩同时导出到Excel表格

爬取学校教务系统上的成绩同时导出到Excel表格项目地址:https://github.com/lryong/GetScores2xls自己做的小项目,如果写得不好,欢迎大家给建议。

2016-11-04 22:31:00 6622 1

原创 从菜鸟教程网站(www.runoob.com)抓取所有教程

项目链接:https://github.com/lryong/TutorialsFromRunoob自己做的小项目,如果写得不好,欢迎大家给建议。

2016-09-07 13:28:26 24455 3

原创 Python学习笔记(五)

数字处理数字对象的工具: 表达式操作符 +,,>>,*,%等 内置数学函数 pow,abs 公用模块 random,math等在列表后添加元素前,要首先初始花列表为一个空列表.Python在计算的过程中显示计算的位数:>>> number=3/7.0>>> number0.42857142857142855>>> print number0.42857142857

2016-06-15 00:56:01 763

原创 隐写术总结

隐写术总结图种,只要将图片保存为zip压缩包格式,然后解压出来就可以了jpg的结束符:FF D9观察文件结束符之后的内容,查看是否附加的内容,正常图片都会是FF D9结尾的。还有一种方式来发现就是利用binwalk这个工具,在kali下自带的一个命令行工具。利用binwalk可以自动化的分析图片中附加的其他的文件,其原理就是检索匹配文件头,常用的一些文件头都可以被发现,然后利用偏移可以配合wi

2016-06-12 01:13:20 11991

原创 邮件攻击

E-mail攻防电子邮件通信通过的协议:简单邮件传输协议(SMTP,Port25)邮局协议(POP,Port110)SMTP协议被用来发送邮件,当POP协议被用来接收电子邮件。收集信息追踪IP地址:反向DNS查找:nslookupWhois可视化的追踪工具: NeotraceProVisualRouteeMailTrackerProSamspade扩张的简单邮件传输协议(ESM

2016-06-12 01:12:24 4360

原创 漏洞综合利用总结

漏洞利用综合目录遍历在搜索引擎里搜”Index of”由于文件名可以任意更改而服务器支持“ ~/” ,“ /..” 等特殊符号的目录回溯,从而使攻击者越权访问或者覆盖敏感数据,如网站的配置文件、系统的核心文件任意文件下载和读取任意文件读取和下载漏洞隐藏一般在文件读取或者展示图片功能块这样的通过参数提交上来的文件名,从这可以看出来过滤交互数据是完全有必要的。恶意攻击者当然后会利用对文件的读取权限

2016-06-12 01:09:56 2416 1

原创 Wireshark笔记

抓包捕获:Capture–>Interface–>网卡数据过滤:Filter过滤规则协议统计/ip统计/端口统计(Statistics)搜索功能(Ctrl+F)Display Filter:显示过滤器,用于查找指定协议所对应的帧Hex Value:搜索数据中十六进制字符位置String:字符串搜索.Packet list:搜索关键字匹配的info所在帧的位置.Packet details:

2016-06-12 01:08:36 693

原创 Kali进行web渗透笔记(十一)

Fuzzing Web ApplicationInjecting random data into applications have varying effects and may reflect a different output for each input.This trial-and-error method could lead the attacker to vulnerabili

2016-06-12 01:06:14 2197

原创 Kali进行web渗透笔记(十)

AJAX and Web Services-Security IssuesAsynchronous JavaScript and XML(AJAX) is a combination of technologies that is used to create fast and dynamic pages.AJAX makes use of javascript to connect and r

2016-06-12 01:04:46 1200

原创 Kali进行web渗透笔记(九)

Exploiting the Client Using Attack Frameworksspear-phing e-mail attack:Choosing your own mail server has one distinct advantage:it allows you to spoof an e-mail address and,if the victim’s mail server

2016-06-12 01:02:38 722

原创 Kali进行web渗透笔记(八)

Attacking SSL-based websiteSecuring the communication between the client and the web application is the most common use of TLS/SSL,and it is known as HTTP over SSL or HTTPS.TLS ia also used to secure

2016-06-12 01:00:21 767

原创 Kali进行web渗透笔记(七)

Exploiting Clients Using XSS and CSRF FlawsOver the years,the cross-scripting attack has been using JavaScript to perform mailcious activities such as malvertising,port scanning and key logging.(The X

2016-06-12 00:56:32 1378

原创 Kali进行web渗透笔记(六)

Scanning-dirbCGI is a common standard for web applications to interact with command-line executables;hence,CGI scripts were the most vulnerable to shellshock attack.Exploitation:use*apache_mod_cgi_bas

2016-06-12 00:51:21 1638

原创 Kali进行web渗透笔记(五)

Attacking the Server Using Injectinog-based Flawscomponents likely to attack Components Injection flaws Operation system shell Command injection Relational database(RDBMS) SQL injection W

2016-06-12 00:43:19 1125

原创 Kali进行web渗透笔记(四)

Major Flaws in Web ApplicaitonsClient-side flaws are targeted flaws and exploit the client-side technologies such as AJAX JSON,and flash code to extract information from the client.Directory browsing

2016-06-12 00:35:25 2891

原创 Kali进行web渗透笔记(三)

Reconnaissance and Profiling the Web Serverinclude the following tasks:IP adddress,subdomains,whois records,Dns servers,search enginesusing google,bing,yahoo,and shodan,archive.orgsocial networking

2016-06-12 00:26:02 2951

原创 Kali进行web渗透笔记(二)

Setting up Your Lab with Kali Linux: Having a completely sepatate laptop installed with Kali Linux on the physical hard drive with suffcient amount of RAM and a high-speed proccessor to crunch in passw

2016-06-12 00:18:23 1443

原创 Kali进行web渗透笔记(一)

Insider attacks are more lethal than the one achieved by an external entity,so sometimes Black box testing would be a waste of money and time .Career as a penetration tester is not a sprint,it is a ma

2016-06-12 00:14:30 1373

原创 SQL注入

使用UNION进一步注入:union select(Oracle使用union select null,null代替1,2)当列数目不对时,会有错误提示使用order by语句,当order by的列<=SQL语句的列数目的时候,查询正常.手工注入一:使用union select查询,查看新增内容,从下图可以看出,列2的内容是可以被输出到页面上的,所以下面的查询我们都将使用列2查询数据库信息,

2016-06-12 00:08:07 1634

原创 PostgreSQL命令接口

PostgreSQL命令接口psql客户端程序提供到PostgreSQL服务器的命令行接口。它使用命令行参数控制客户端接口中启用的功能。PostgreSQL的管理员账户名为postgres。因为PostgreSQL使用Linux用户账户来验证用户,所以必须以Linux账户postgres登陆才能以postgres用户身份访问PostgreSQL服务器。因为postgres用户账户是一个特殊账户,

2016-06-11 23:51:36 1909

转载 mysql常用命令语法总结

一、启动与退出1、进入MySQL:启动MySQL Command Line Client(MySQL的DOS界面),直接输入安装时的密码即可。此时的提示符是:mysql> 2、退出MySQL:quit或exit二、库操作1、创建数据库 命令:create database <数据库名> 例如:建立一个名为xhkdb的数据库 mysql> create database xhkdb; 2、显

2016-06-11 23:46:26 492

原创 Python学习笔记(四)

元组元组是不可变序列.元组提供了一种完整性的约束.>>> test=(1,2,3,4)>>> len(test)4>>> test+(6,5)(1, 2, 3, 4, 6, 5)>>> test[0]1>>> test[3]4>>> test[0]=999Traceback (most recent call last): File "<stdin>", line 1,

2016-06-11 23:09:08 465

原创 Python学习笔记(三)

列表序列操作:>>> l=[124,'spam',1.23]>>> len(l) #列出列表长度3>>> >>> l[0] #列出元素124>>> l[-1]1.23>>> l[:-1] #分片[124, 'spam']>>> l+[4,5,6] #添加[124, 'spam', 1.23, 4, 5, 6]>>> l[124, 'spam', 1.23]

2016-06-11 23:06:51 364

原创 Python学习笔记(二)

数字数学模块:math字符串(序列)#example>>>s='spam'>>>len(s)4>>>s[0]'s'>>>s[1]'p'>>>s[-1]m在python中,索引是按照从最前面的偏移量进行编码的,也就是从0开始,第一项索引为0,第二项索引为1,以此类推.可以反向索引.>>>s[-1]'m'>>>s[len(s)-1]'m'序列也支持分片(slice)的操

2016-06-11 23:03:23 439

后台扫描字典

2016-09-02

Python网络编程基础

Python网络编程基础

2016-08-25

Solaris系统课程文档

Solaris系统课程文档

2016-08-25

模拟电子技术习题答案

模拟电子技术习题答案

2016-08-25

SQL注入攻击与防御

数据库安全

2016-08-25

数据库原理

数据库原理

2016-08-25

metasploit自动化渗透攻击模块

metasploit自动化渗透攻击模块db_autopwn

2015-11-18

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除