据 LZ 的观察,很多同学(软件工程专业、大三)并没有基础的网络安全知识,构建的系统漏洞百出(通过字符串拼接构造 SQL 语句、用户密码简单 Hash 不加盐等等)。然而很多系统(.com
、.cn
,或许还有.gov.cn
)是层层外包给大学生的。这样的系统难保不是下一个徐玉玉事件的源头。而且学校的课程通常没有涉及相关内容(不太清楚隔壁网络安全专业的情况,但软件工程的《计算机网络》是完全略过网络安全部分不讲的,其他如数据库、 HTML 、 JSP 、 Java 等的课程类似)。那么,如果通过社团向相关专业的同学们举办关于网络安全的科普讲座,需要注意哪些问题?诸位前辈又有哪些看法、意见和建议呢?
目前 LZ 发现的问题有以下几个:
是否需要增加(如我国关于信息安全的法律法规,不要未受邀请地测试他人的系统等)或者删改某些内容?
1
ivmm 2016-08-30 23:31:48 +08:00 1
同样有这样的需求。
2. 我大一就学了 SQL Sever 。。。。 然后自学 Mysql 5.我想说,很难激起他们的兴趣。或许刚开学还有三分钟热度,开学一个月后就难说了 |
5
wevsty 2016-08-30 23:40:17 +08:00 2
现场演示是最有效最深刻的
字符串拼接的,找个项目演示 SQL 注入 不带盐 HASH 的,现场解密查询密码 了解了这样做的危害,有责任心的人心里就会树立起这种意识了 |
6
GentleSadness 2016-08-30 23:40:53 +08:00 via Android 1
web 白帽子 其实也就这几个要注意的,然后怕的是嫌麻烦,编码其实注意的应该不多
|
7
ferock 2016-08-30 23:47:18 +08:00 via iPhone 1
座谈的方式,要用互动开场…
比如:大家平时怎么考虑自己项目的安全? |
9
RTNelo OP @GentleSadness 嫌麻烦真是没办法啊...明明多几句代码就不会出现漏洞的...所以到最后不是兴趣的问题而是责任心的问题吗...
|
12
ferock 2016-08-30 23:53:56 +08:00 via iPhone
那,继续下一阶段问题:那如果现在需要给你的项目考虑安全性,应该怎么系统的考虑呢?
你的座谈就会有节奏的往下走了 |
14
wevsty 2016-08-30 23:55:00 +08:00
@RTNelo 不需要一步一步的教操作过程啊,演示一下过程,不需要做任何说明,或者事前演练好直接放视频都行,花不了多少时间。
另外 web 安全这方面有多少东西需要讲?基本上过滤一下用户输入,密码用加盐 hash 基本上也就差不多了吧。不过这方面我不是很懂。如果说一次讲不完也没关系,先勾起兴趣或者安全意识其实目的也就达到了,该学的,想学的自然会学不管是通过讲座还是自己学,不想考虑安全问题的,天天敲打也没用不是么? |
17
RTNelo OP @wevsty 第一个示例准备好材料(在线猜测密码之类的网站)让同学们自己尝试以加深印象?之后的示例通过 ppt 演示节省时间?
|
19
Yinz 2016-08-31 00:01:55 +08:00 1
提供一个 Idea :D ,讲座前邀请同学们注册一个目标网站,使用不加盐 hash 储存,然后在讲座上现场跑彩虹表,输出大屏幕的密码打个码就好 XD
还可以现场社工? 当然注册的时候写好注册的密码将会被用于现场展示,请不要使用真实密码注册这样 XD 总之挺喜欢这种现场演示的 XD |
20
RTNelo OP |
21
sheep3 2016-08-31 00:07:27 +08:00 via Android 1
首先很多人可能还不清楚什么是 hash ……
|
22
wevsty 2016-08-31 00:09:17 +08:00
|
25
billlee 2016-08-31 00:17:17 +08:00 1
软件工程专业不开信息安全相关的课程吗?
|
26
RTNelo OP |
27
RTNelo OP |
28
wevsty 2016-08-31 00:28:07 +08:00
@RTNelo
用带漏洞的老版本 Discuz ,先让同学现场注册,然后第一步公布抓包,抓包不一定需要工程模式,可以直接用 Win Server 的远程路由访问当网关使,Linux 也可以,网关抓包就行了找个无线路由器做无线发射即可,或者直接 arp 一下也可以,这样就能抓包强调 HTTPS 的重要性。接着 SQL 注入现场拉 Discuz 的数据库回来,在解密其中的密码多余的时间还可以用 Disucz 演示 XSS 之类的其他问题。 |
29
ETiV 2016-08-31 00:32:05 +08:00 1
我觉着光讲没用的, 老话讲的吃一堑长一智还是有道理的.
踩过这种坑了才知道为啥要这么做, 而不是那么做. 但首先还是得教他们懂得负责. 说白了, 这是人生的课堂. |
30
q397064399 2016-08-31 06:38:18 +08:00 2
真没必要教,我 07 年拿个 啊 D 配合 ewebeditor 黑了那么多 ASP 的站点,就是这些不负责的程序员弄出来的,要是这个世界都是负责的程序员,那新手黑客如何练技术?虽然早不玩安全了,但是上大学靠着 内网嗅探 ARP 还有一个 ewebeditor 硬是拿到了学校的成绩数据库,之后天天逃课,现在毕业蛋疼的要死,技术没学好技术,自己学业也没学好
|
31
megatron 2016-08-31 07:32:44 +08:00 1
可以先举办一个渗透比赛,当然要有奖品。特等奖,入侵难度最大,甚至可以是通过选拔赛之后,现场实时入侵。而普通奖,常见的漏洞。
|
32
msg7086 2016-08-31 07:34:39 +08:00 1
我还见过把人家大型公司的域控管理员密码明文到处传的,而且每次点击都会传一次。
|
33
firebroo 2016-08-31 07:53:52 +08:00 via Android 1
紧跟步伐学习新的技术栈,一般前沿框架都会尽量把安全工作都给你做了,当然安全做大的弱点还是人。
|
34
geek123 2016-08-31 08:45:34 +08:00 1
|
35
davin 2016-08-31 08:48:11 +08:00 1
推荐大家看相关的电影,比如: Firewall(2006), Cybergeddon (2012), Mr. Robot(第二季出到第九集了)
|
36
wemore 2016-08-31 08:56:20 +08:00 via Android 1
多逛 v2 不就行了
|
37
enginex 2016-08-31 08:57:47 +08:00 1
5. 把 5 季的 POI 放一遍 O(∩_∩)O
|
38
hffaxy 2016-08-31 09:12:21 +08:00 1
0.信安专业,就我自身感受的话,实际演示远比 ppt 讲义生动得多。
1.实际演示可自行搭建脆弱系统环境或者直接上 DVWA 让同学们自己实际体验不安全编码的危害性。 2.OWASP TOP 10 要讲这个的话,涉及知识面就比较多了,同学们接受起来就相对比较困难,结合实际演示吧,效果应该会好点。 3.信安方向,就安全编码来说, web 和软件编程同样重要,也可覆盖软件安全编码知识,比如说逆向工程和缓冲区溢出。 4.一切之前,先科普信息安全相关法律法规。 5.兴趣的话,往 hack , geek 方面去吹,电影看过没?各种神,各种玄,同学兴趣就上来了。 6.如果只是科普向讲座,可向低年级开放,有兴趣的自然回去补基础知识,不过就要相应的在你的讲义里 0x0 基础知识里补充相对完善的基础知识或者相关技术,概念就行,不用太全面。 7.这只是一个讲座, Interest first , and take it easy 8.enjoy it~ |
39
solonF 2016-08-31 12:48:05 +08:00 1
咦,非要讲座嘛,效率不高啊,随便把要讲的往 qq 群里一发,该看到的会看到并注意的吧……
|
40
loading 2016-08-31 13:59:27 +08:00 via Android 1
当着大家的面,进教务处,改分。
|
41
RTNelo OP @wevsty 非常感谢,我去查查相关资料。
@ETiV 但很多时候吃一堑的人是普通用户(明明程序员多写一句就可以避免的事情),代价还是太大了。 @q397064399 但是就我的观察来看,同学们很多时候不是不负责任,而是根本没有安全意识,根本不知道他们的实现是有问题的。 @megatron 主要还是面向非信息安全专业的同学们的科普讲座,普及一下相关知识。直接的渗透比赛已经有了,而且科普的性质也没有那么强了。 @msg7086 这个公司...一直没出过问题吗... |
42
RTNelo OP |
43
RTNelo OP |
45
hack 2016-08-31 21:45:08 +08:00
讲一遍 webgoat 即可,然后现场演示一下
|
46
Yinz 2016-08-31 21:54:38 +08:00
@RTNelo 现场邀请同学注册的话,很容易出现服务器压力太大直接挂掉的情况,而且讲座的场馆可能会遇到信号不好的情况(我们学校几乎 100%),现场网络服务建议慎重考虑,很容易出各种问题。
曾经有公司来做讲座,现场搭了 5 个蜜罐路由器,现场大概 100 来人,直接脱挂了所有路由和网络,现场演示十分尴尬 XD 不过如果有办法控制这个效果的话,蜜罐路由还是非常有趣吸引人的 XD |
47
breeswish 2016-08-31 21:56:35 +08:00
然并卵,只有与到手的分数挂钩了他们才会真正在意。
|
48
bjrjk 2016-08-31 22:03:39 +08:00 via Android
第二个问题吧,我是高中生,也喜欢研究信息安全。想问你这个会如何参加?你说应该不应该不限制呢?不过如果年龄太小就是来这里凑个热闹也确实不太好。
|
49
wevsty 2016-08-31 22:15:11 +08:00
@Yinz 用性能好一点的机器做服务器没有那么脆弱吧? wifi 连接人太多不好用或者挂掉倒是有可能,可以 2 种解决方案,公网 VPS 上架,所有人用运营商网络访问就可以了,或者场馆架设 wifi , DHCP 限制一下最大用户数量然后不允许连接外网,演示都放在内网会好很多。要保证不出问题,可以在第一排提供有线连接。
|
51
Yinz 2016-09-01 01:01:07 +08:00
@wevsty 我们学校出的问题是,场馆内信号不好,手机 4g 极慢, WIFI 由于连接人数过多导致爆炸,所以整个场馆内几乎是断网状态。。。这个问题和服务器性能没太大关系。。
|
52
shiji 2016-09-01 04:18:06 +08:00
个人感觉对安全感兴趣的都去自学了,剩下的积极性有限。
|
53
xFrank 2016-09-01 09:05:12 +08:00
支持现场演示,最能提升兴趣。
还可以讲讲类似这种热门事件: http://mt.sohu.com/20160825/n465965832.shtml |
55
changwei 2016-09-01 11:09:54 +08:00
我觉得可以先自己去找找看自己的高校官网是否有类似的漏洞,或者拿他们的漏洞作为演示 demo ,在法律允许的情况下把危害展示给他们看,这样很容易挑起学生们的好奇心和积极性,这种讲座还是有点意义的。
|
56
Hodor 2016-09-01 17:28:11 +08:00
这么热的天还得走到教室。。哎。。算了,宿舍打游戏吧
|
57
q397064399 2016-09-02 05:52:23 +08:00
@RTNelo 安全编码以后肯定会被带入框架,现在 MVC 的设计模式,在控制器里面框架可以编写代码自动过滤 SQL 注入攻击,而不是让程序员来实现
|
58
q397064399 2016-09-02 05:58:14 +08:00
你应该普及一下类似于缓冲区溢出的技术,找个老点的发行版 linux ,写一个 CS 简易客户端,在 Server 端弄个套接字,然后处理字符串的时候,弄个缓冲区溢出,然后写个 shellcode ,关闭 selinux 在电脑面前演示一遍,如何通过 shellcode 提取 user 权限,进而获得 root 权限,讲解一下 ios 越狱也基本上跟这玩意原理差不多,之后那些大一的 CS 新生就会对你顶礼膜拜了。
|
59
q397064399 2016-09-02 06:02:31 +08:00
不过 CS 基础好的,估计也会嗤之以鼻,这些年搞 IOS 越狱其实也就是个体力活,新的加密解密算法还轮不到黑客来搞,大多就是些年轻小伙子,逆向分析一下 ios 的沙箱技术,看能不能通过一些错误提权到内核权限来修改 rootfile
|