ARTS-week07

Algorithms

本周算法题:
Valid Parentheses
思路:遍历字符串,使用栈,当字符为左半边括号时,压入栈中,遇到右半边括号,取出栈顶元素,如果能匹配上,就继续。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class Solution {
public:
bool isValid(string s) {
stack<char> parentheses;
for (int i = 0; i < s.size(); ++i) {
if (s[i] == '(' || s[i] == '[' || s[i] == '{') {
parentheses.push(s[i]);
}
else {
if (parentheses.empty()) {
return false;
}
if (s[i] == ')' && parentheses.top() != '(') return false;
if (s[i] == ']' && parentheses.top() != '[') return false;
if (s[i] == '}' && parentheses.top() != '{') return false;
parentheses.pop();
}
}
return parentheses.empty();
}
};

Merge Two Sorted Lists
思路:使用递归,比较当前两个节点值的大小。

class Solution {
public:
    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {  

        if (l1 == NULL) {
            return l2;
        }
        if (l2 == NULL) {
            return l1;
        }
        if (l1->val < l2->val) {
            l1->next = mergeTwoLists(l1->next, l2);
            return l1;
        } else {
            l2->next = mergeTwoLists(l1, l2->next);
            return l2;
        }
    }
};

Review

本周阅读英文文章Building an Intrusion Detection System using Deep Learning

文中所提关键点:
1)使用Matplotlib进行数据集的可视化
2)数据集采用ISCX 2012、IDS 2017。
3)原始.pcap文件格式对深度学习模型是不可读的,使用ISCXFlowMeter将其转换为可读的.xml文件格式。
4)在VGG-19的Keras预训练模型中采用迁移学习技术

之前自己也思考过在目前的深度学习中,多数都是图像识别,如果是.pcap文件,应该怎么处理成可读文件,今天看到了一个可行性答案,表示有点激动,后面会对作者提到的方法进行验证,并持续关注该项目的动态。

Technique

Bro version:2.5.5
使用Bro分析SMB流量时,发现没有产生相应的log文件。在Google Groups中找到答案: https://groups.google.com/forum/#!topic/security-onion/8Ftiotp92A8

原因:SMB analyzer默认是不加载的,需要手动打开。

解决方案:
/opt/bro/share/bro/site/local.bro文件中取消对@load policy/protocols/smb的注释。

Share

在读《社会工程:安全体系中的人性漏洞》这本书,受到很多启发,有些案例看起来不可思议,但是确实发生了,正如书中所说:

不管你的安全设备有多么坚不可摧,防御流程有多么高效严密,安全系统中最薄弱、最容易入侵的环节却是人。专业的恶意社会工程人员似乎防不胜防,无法抵御,他们会运用人性的弱点攻破看似防护严密的系统。

目前还没读完,但是对社工有了基本的认识,社工人员采用的心理学原则,运用方法,说服技巧等等。对企业和个人来说,社工的方式不断增多,我们需要了解这些知识,采取有效的防御措施,防范潜在的恶意攻击。

0%