1、ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 1 页ChinaVis Data Challenge 2018挑 战 一 评 审 指 南本文档针对挑战一给出了详细的评审指南,涵盖了作品提交、问题背景、数据说明、提交给参赛者的任务、潜在答案以及数据中支持这些答案的证据。挑战赛有关问题的完整说明以及向参与者提供的数据,请访问 http:/www.chinavis.org/2018/challenge.html。一、提交要求作品提交要求:(1)答卷:要求参赛者在完成对数据的可视分析后,用图文并茂的方式准确地回答官方预设的问题,以 Word 或 PDF 格式提交;(2)视频:要求
2、参赛者制作带解说的视频,用于解释其可视分析流程,以 WMV 格式提交,视频总长度不超过 5 分钟,视频数量 1 个;(3)论文:要求参赛者以论文形式,总结其可视分析方案的特点,论文格式要求与 ChinaVis论文格式要求一致,篇幅不超过两页,以 Word 或 PDF 格式提交;二、背景说明HighTech 是一家互联网高科技公司,有几百名员工,分属财务、人力资源和研发三个部门。公司正在全力研发一款重量级新产品,近期该产品临近发布,公司对内部发生的一切异常现象都非常敏感。为了维护公司的核心利益,确保新产品顺利发布,公司高层决定临时成立内部威胁情报分析小组,该小组将根据公司内部采集到的数据,分析并
3、处置可能存在的各种安全威胁。在分析威胁情报过程中,数据的复杂性需要计算机的处理,但发现、分析与处置安全威胁需要人的经验、认知与判断,可视分析技术能将计算智能与人类智慧这两者紧密结合,通过结合可视化、数据挖掘与人机交互技术,成为威胁情报人员高效分析和理解威胁情报数据的利器。假设您是威胁情报分析小组的成员,请您设计并实现一套可视分析解决方案,帮助该公司及时准确地找出可能存在的内部威胁情报。三、数据支持给参赛者提供了以下数据支持:ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 2 页员工登录日志、员工网页访问日志、TCPLOG 日志、邮件日志、员工打卡日志。登录日志:员工通过自
4、己主机或跳板机的应用程序,登录服务器或数据库时生成的日志。例如使用 SSH、SCP 命令、XSHELL 程序或者 SFTP 传输文件都会产生远程登录日志;客户端应用程序访问数据库时,会产生数据库登录日志。login.csv字段名称 字段含义 相关说明time 日志生成时间user 用户名 登录使用的用户名proto 应用的协议 例如 ssh、mysql 等dip 目的 IP 被登录 IPdport 目的端口 被登录端口sip 源 IP 登录发起 IPsport 源端口 登录发起端口state 登录结果 成功或者失败网页访问日志:该日志记录了公司内部所有员工的网页访问记录。time 是该条记录生
5、成时间,sip 是客户端 IP,sport 是客户端端口,dip 是服务器 IP,dport 是服务器端口,host 是服务器域名。如果通过 IP 地址直接访问网站,不需要 DNS 服务器解析,HTTP 报头的 host 字段为空字符串。weblog.csv字段名称 字段含义 相关说明time 日志生成时间sip 源 IP 客户端 IPsport 源端口 客户端应用端口dip 目的 IP 服务端 IPdport 目的端口 服务端应用端口host 请求的域名 HTTP 报头的 host 字段TCPLOG 日志:记录公司内部网络活动产生的 TCP 连接。 stime、dtime 分别是连接建立和断
6、开时间。proto 是 IP 包头中的协议字段值。sip、dip 分别是连接发起者和接受者的 IP 地址,sport、dport 是与之对应的源与目的端口。整个连接过程中,sip 向 dip 发送的总字节数为ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 3 页uplink_length,downlink_length 与之相反。员工的登录行为、网页访问行行为、邮件发送或者接收行为等都会产生一条或者多条 TCPLOG 日志。tcpLog.csv字段名称 字段含义 相关说明stime TCP 数据流开始时间 TCP 流的开始时间,即收到该流的第一个 SYN 包的时间dtim
7、e TCP 数据流结束的时间 TCP 流的结束时间,即收到该流的最后一个包的时间proto 协议 IP 包头中的协议字段值dip 目的 IP TCP 数据流的服务端 IPdport 目的端口 TCP 数据流的服务端应用端口sip 源 IP TCP 数据流的客户端发起 IPsport 源端口 TCP 数据流的客户端应用端口uplink_length 上行字节数从 TCP 流的建立到该流的结束,从客户端发往服务器端的应用层数据的字节总数downlink_length 下行字节数从 TCP 流的建立到该流的结束,从服务器端发往客户端的应用层数据的字节总数邮件日志:邮件日志记录了经过公司邮件服务器的收
8、发邮件信息。time 是邮件的发送时间/接收时间,proto 是邮件使用的应用协议。sip、dip 分别是连接发起者和接受者的 IP 地址,sport、dport 是与之对应的源与目的端口。from、to 分别是邮件的发送者和接收者。邮件内容属于隐私,只提供邮件主题 subject。email.csv字段名称 字段含义 相关说明time 邮件发送/接收时间 邮件包头中的邮件发送/接收时间proto 应用协议 SMTPsip 源 IP IP 报头源 IP 地址sport 源端口 TCP 报头源应用端口dip 目的 IP IP 报头目的 IP 地址dport 目的端口 TCP 报头目的应用端口fr
9、om 邮件发送人 来自于邮件头相应字段ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 4 页to 邮件接收人 来自于邮件头相应字段subject 主题 来自于邮件头相应字段打卡日志:记录了公司每个员工每天上下班时间,一行记录中 checkin 或者 checkout 都为0,表示没来上班。那就是说,没有来公司打卡的员工,也有一行考勤记录。另外,如果公司员工当天没来公司上班,则次日该员工会收到旷工提醒邮件。checking.csv字段名称 字段含义 相关说明id 员工 idday 日期checkin 上班签到时间checkout 下班签退时间ChinaVis 2018 数据
10、可视分析挑战赛 挑战 1 评审指南第 5 页四、事件真相4.1 事件简表事件简称 重要程度 发生时间 事件概要Playing ball 1 一般 2017-11-02 19 点 员工集体参加打球活动Abnormal login 1 非常重要 2017-11-03 登录记录中某账号频繁登录失败Abnormal login 2 非常重要 2017-11-04 登录记录中某账号频繁登录失败Abnormal login 3 非常重要 2017-11-06 登录记录中某账号频繁登录失败,后面再没有出现类似事件Playing ball 2 一般 2017-11-09 19 点 员工集体参加打球活动Play
11、ing ball 3 一般 2017-11-16 19 点 员工集体参加打球活动Database failure 重要 2017-11-16 19:22 数据库由于员工误操作发生故障Database maintenance 重要 2017-11-16 19 点23 点 数据库故障后的临时维护Snooping product information 重要 2017-11-16 20:22员工在服务器上违规查看产品信息Playing ball 4 一般 2017-11-23 19 点 员工集体参加打球活动Data leakage 非常重要 2017-11-24 12:4312:44 员工盗取数据并
12、向外泄露Travel planning 一般 2017-11-27 至 2017-11-30 员工请假旅游Dimission 重要 2017-11-27 至 2017-11-28 员工申请辞职Playing ball 5 一般 2017-11-30 19 点 员工集体参加打球活动Financial department overtime 一般2017-11-19、2017-11-25、2017-11-26 月底的周末财务部门多次加班Stepping stone event 重要2017-11-17、2017-11-21、2017-11-27、2017-11-30员工通过跳板机向外界服务器上传数
13、据VPN remote access 一般2017-11-04、2017-11-052017-11-11、2017-11-122017-11-18、2017-11-192017-11-25、2017-11-26、2017-11-28员工没来公司,通过 VPN 远程链接到公司内网进行工作TCPLog system failure 一般 2017-11-10 至 2017-11-28TCP 流量监控系统可能存在bug,导致 TCP 日志数据中部分邮件收发记录的网络协议类型为http,而邮件日志数据中对应记录的协议类型为 smtpChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第
14、6 页4.2 重要人物人物简称 员工 id 部门 IP 参与事件Thief 1487 研发 3 10.64.105.4Playing ball 3,Database maintenance,Snooping product information,Data leakage,DimissionLeader1 1080 研发 3 10.64.105.175 Abnormal login 1Leader2 1211 研发 3 10.64.105.63 Abnormal login 2Leader3 1228 研发 3 10.64.105.146 Abnormal login 3DB deleter
15、1376 研发 3 10.64.105.219 Playing ball 3,Database failure,Database maintenance,DimissionDB maintainer 1284 研发 3 10.64.105.95 Database maintenanceJob leaver 1281 研发 2 10.64.105.44 DimissionTraveler1 1149 人力资源 10.64.106.11 Travel planningTraveler2 1352 研发 3 10.64.105.174 Travel planningTraveler3 1383 研发
16、 3 10.64.105.60 Travel planningTraveler4 1389 研发 3 10.64.105.79 Travel planning4.2 主线事件Thief 在公司新产品发布前夕盗取产品相关资料并泄露出去。4.2.1 背景和动机X 公司与 hightech 公司是两个互联网公司,商业竞争极其激烈。 X 公司为了及时掌握 hightech公司的动向,在竞争中取得优势,派遣了员工 Thief 在 hightech 公司充当间谍,以获取 hightech公司的重要信息并及时反馈回来。Thief 在 hightech 公司工作一年多了,是一名普通的员工。近期,hightec
17、h 公司一项重量级新产品临近发布。X 公司为了破坏 hightech 公司的产品发布会,命令 Thief 在产品发布前夕盗取这一产品的产品信息和相关材料,并在产品发布前泄露出去,以达到打击 hightech 公司的目的。Thief 了解到产品信息存放在公司的服务器 A 上。公司有一套完善的内部监控系统,能够将员工的网络活动记录下来。Thief 感到非常困惑,如何才能够在不被发现的情况下将数据盗取出来呢?ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 7 页4.2.2 Thief 的计划Thief 为了掩饰自己的行为,也为了获取更高的资料查询权限,他决定尝试盗取一个领导的账
18、号,使用这个账号进行盗取数据的操作。Thief 先后尝试盗取 Leader1、Leader2、Leader3 的账号,由于 Leader3 账号密码设置为弱口令,最终成功破解 Leader3 的账号密码。Thief 认为使用别人的账号仍然不够保险。后来,他想到了使用跳板机隐藏自己的 IP。首先使用 Leader3 的账号,登录另一台服务器 B(10.50.50.43),然后在 B 服务器上再访问目标服务器A(10.50.50.44),将 A 服务器上的产品信息等上传到公司外部网络的某台服务器上。盗取数据成功后,Thief 决定在这个月月底辞职。4.2.3 Thief 的活动Abnormal l
19、ogin 1:2017-11-03 ,在这一天的各个时间段,Thief 使用 Leader1 的账号登录 A 服务器多次,频繁登录失败,破解账号失败。Abnormal login 2:2017-11-04 ,在这一天的各个时间段,Thief 使用 Leader2 的账号登录 A 服务器多次,频繁登录失败,破解账号失败。Abnormal login 3:2017-11-06 ,在这一天的各个时间段,Thief 使用 Leader3 的账号登录 A 服务器多次,频繁登录失败,最终于 19:42 登录成功,成功破解该账号密码。Playing ball 3:2017-11-16,Thief 报名参加打
20、球活动,由于出现数据库突发故障,事实上并没有参加打球活动,而是参与了数据库维护。Database maintenance:2017-11-16 19 点到 23 点期间, Thief 参与数据库故障后的维护工作,于 23:34 打卡离开公司。Snooping product information:2017-11-16 20:22,Thief 在维护数据库过程中,使用 Leader3 的账号登录 A 服务器,查看服务器上的产品信息,确认 A 服务器上有他需要的资料。Data leakage:2017-11-24 12:43-12:44,午休期间,Thief 使用 Leader3 的账号登录 B
21、 服务器,再使用 B 服务器做跳板,同时使用 Leader3 的账号登录 A 服务器,A 服务器向外界服务器泄露数据。Dimission:2017-11-27 提交辞职申请,2017-11-28 辞职申请通过,28 号之后没有再来公司。ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 8 页4.3 支线事件4.3.1 数据库故障DB deleter 有跳槽的打算,在这个月经常浏览工作招聘类网站。2017-11-16,工作过程中粗心大意不小心误操作了数据库,数据库无法正常工作了。数据库误操作后,系统向 Thief 和 DB maintainer 发送了数据库报警邮件。三人当天
22、晚上一起对数据库进行维护,23 点半左右维护好数据库,才离开公司。月底,DB deleter 辞职离开公司。Database failure:2017-11-16 19:22,DB deleter 误操作了数据库,数据库无法正常工作了,系统向 Thief 和 DB maintainer 发送了数据库报警邮件。Playing ball 3:2017-11-16,Thief 和 DB deleter 都报名参加了打球活动 ,由于数据库故障,两人都没有参与该活动。Database maintenance:2017-11-16 19 点到 23 点期间, Thief、DB maintainer 和 D
23、B deleter 参与数据库故障后的维护工作。23 点半左右数据库维护成功,Thief 于 23:34 打卡离开公司,DB maintainer 于 23:35 打卡离开公司,DB deleter 于 23:46 打卡离开公司。4.3.2 离职事件Dimission :2017-11-27,月底,员工 Thief、DB deleter、Job leaver 提交了辞职申请,2017-10-28 辞职申请审批通过,28 号之后这三位员工没有再来公司。DB deleter 离职原因是自己早已打算换工作,又遇到数据库故障事件,因此选择月底离职。Job leaver 离职原因是家中出现重大变故,突然
24、提出辞职申请。Thief 离职原因则是已经完成资料盗取任务,在月底离职集中审批阶段与其他两人一起离职。4.3.3 旅游事件Travel planning:Traveler1、Traveler2、Traveler3 、Traveler4 四名员工计划一起出去旅游,他们在 2017-11-20 至 2017-11-24 期间频繁浏览旅游网站,在 2017-11-24(周五)向各自的领导发送了请假邮件,请假时间为四天(27、28 、29、30 )。4.3.4 员工集体活动Playing ball 1-5:2017-11-02、2017-11-09 、2017-11-16、2017-11-23,201
25、7-11-30,这五天(都是周四)早上 9:30 hr()向所有员工( )发送邮件“打球啦,欢迎大家参加”,有意向参加的员工回复确认邮件,并在 19:30 前离开公司参加活动。大部分参加活动的员工均在 19:00-19:20 这段时间区间离开公司。ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 9 页4.3.5 财务月底加班Financial department overtime:由于月底财务工作繁忙,在月底的周末,2017-11-19、2017-11-25、2017-11-26 三天,财务部门绝大部分的员工来到了公司工作加班。4.3.6 跳板机事件Stepping s
26、tone event:除了泄露数据的员工 Thief 外,在 2017-11-17、2017-11-21、2017-11-27、2017-11-30 四天,1183 、1273 、1169、1151 四名员工先后通过跳板机向外界服务器上传数据,但这些都属于正常行为。4.3.7 VPN 远程访问VPN remote access:1147、1283、1284 、1328、1334、1376、1487 、1494 八名员工曾在周末通过 VPN 远程链接到公司内网加班工作;1059 在 2017-11-28 周二没来公司,通过 VPN 远程链接到公司内网审批了员工 1376 和 1487 的辞职申请
27、。4.3.8 流量监控系统故障TCPLog system failure:2017-11-10 至 2017-11-28,TCP 日志数据中一些邮件访问日志的协议本应该是 smpt,却被标记为了 http,可能是由于 TCP 日志系统 bug 造成。ChinaVis 2018 数据可视分析挑战赛 挑战 1 评审指南第 10 页五、参考答案评审总体说明:1:要求回答问题准确且简明扼要;2:要求以可视分析为主要技术路线探索问题答案; 3:要求用可视化的方式呈现与解释给出的答案;4:鼓励给出参考答案以外的任何合理的新发现;5:鼓励在分析过程中引入智能算法;6:鼓励参赛队伍自行开发新颖的可视分析解决方
28、案;7:鼓励参赛队伍使用自己团队(公司)研发的分析工具。5.1 挑战 1.1 分析公司内部员工所属部门及各部门的人员组织结构,给出公司员工的组织结构图(建议参赛者回答此题文字不多于 500 字,图片不多于 5 张);该公司组织结构较为简单清晰,总裁 1 人,总管全局,5 个部门(财务、人力、研发 1、研发2、研发 3)各有一个部门主管,3 个研发分为很多个小组,每个小组有一个组长。具体信息如表:部门 人数 领导 员工(红色为小组组长)总裁 1 1067财务 24 1041 1368,1347,1255,1248,1327,1439,1137,1370,1467,1226,1369,1186,1
29、213,1451,1124,1431,1293,1253,1342,1498,1108,1180,1346人力资源 18 10131104,1499,1371,1184,1251,1295,1312,1433,1165,1300,1378,1473,1118,1363,1249,1110,1149研发 1 62 10681154, 1176,1315, 1152,1420;1191, 1428, 1483, 1469, 1156, 1456, 1204, 1435;1207, 1189, 1330, 1319, 1296, 1399, 1263, 1103;1100, 1139, 1481,
30、1385, 1147, 1321, 1493, 1458, 1170, 1379, 1305, 1234,1362, 1405, 1159, 1474;1098, 1343, 1127, 1496, 1277, 1334;1209, 1460, 1126, 1322, 1339, 1388, 1349, 1153;1060, 1359, 1457, 1328, 1145, 1306, 1440, 1396, 1446, 1336;研发 2 88 10071087, 1151, 1220, 1286, 1141, 1494, 1373;1115, 1233, 1423, 1471, 1243, 1491, 1464, 1169, 1408, 1183, 1425, 1357, 1459, 1455;1230, 1167, 1182, 1354, 1265, 1129, 1252, 1223, 1404, 1200;1172, 1132, 1490, 1246, 1466, 1475, 1314, 1397, 1436, 1480, 1257, 1345, 1477;1192, 1282, 1403, 1303, 1210, 1340, 1140, 1484;1199, 1348, 1391, 1278, 1197, 1486;