Hello, this is Ichihara from the LINE security team. I am in charge of security consultation for LINE services, providing countermeasures for account hacking and abusing, researching authentication technology, and engaging in standardization activities.
Today, I would like to share with you an event titled, “LINE and Intertrust Security Summit 2017 Spring, Tokyo”, co-hosted by LINE and Intertrust on May 17. I will cover this event over two posts; this is the first part of the recap. Have a look at the second part from here
Here is a few basic information of the event.
- Official website: https://www.intertrust.com/company/events/line/
- Date and time: Wednesday, May 17, 2017 10:00–18:00
- Location: An auditorium in LINE office located at Shinjuku Miraina Tower
- Participants: Approximately 140 people
Introducing the LINE-Intertrust Security Summit
The focus of the summit was on “endpoint security”. Endpoint security here refers to the security on end devices such as PCs, mobile devices, IoT devices, and also on the apps running on these devices. If you were to provide services such as payment, games, music, movies, educational contents, you will be dealing with “important data to protect”, and it will be only a matter of time for you to face countless problems such as cost issues. At LINE, we too have information to protect, such as various user information, private information, and billing information for LINE Pay.
So what is the solution to the endpoint security challenge? In a second, you will probably come up with an idea to use tamper-resistant hardware devices such as IC cards, to apply protection at a hardware level, on processing important information such as keys, personal information, signature generation. But it will take more time for your company to actually employ the solution, coming to think of issues such as convenience, technology compatibility, necessary hardware support, device coverage and operation costs. It’s not that simple.
On the other track, there are technologies and products at a software level, such as DRM, software obfuscation, white-box cryptography. Software solutions do have an advantage over hardware solutions, as software solutions can be independent of specific device and hardware. However, it is unclear how strong software solutions are compared to tamper-resistant hardware. There is no certification system or evaluation standards like IC card Common Criteria AVA_VAN.5 or HSM FIPS 140-2, to judge the software solutions objectively. Generally, software solutions are not easy to opt because they tend to be expensive.
In other words, for enterprises, endpoint security for apps always requires a major decision; to protect with hardware or with software, that is the question. In addition, the number of targets requiring security is equivalent to the multiples of number of apps, that is, “x N (no. of apps)”. Troublesome and solution-less problems on endpoints, in other words, security problems, have been present from the beginning of IT until now.
However, researches have been continuously conducted on white-box cryptography, tamper-resistant software and obfuscation technology. Many researchers and engineers around the world are reporting new attack tactics and are also coming up with new countermeasure technologies.
So, why not gather experts from the companies who provide services to end users, researches, and solution companies? And introduce the latest efforts on endpoint security and have hot debates over pros and cons over the solutions. This idea seemed quite interesting to us. In fact, conferences focused on such issues are not frequent in Japan. Now you know why we held this event, the LINE and Intertrust Security Summit.
At the summit, in addition to the keynote by Takeshi Nakayama, CISO of LINE Corporation, many other sessions were provided to introduce LINE’s efforts on endpoint security. Elenkov Nikolay, a security engineer from LINE, presented a topic on endpoint security in the mobile world, entitled “Implementing trusted endpoints in the mobile world”. LINE’s security engineer, Sanghwan Ahn delivered a session on the latest attack tactics against the products with white-box cryptography, entitled “Practical attacks on commercial white-box cryptography solutions”.
LINE Corporation also announced that LINE has joined the FIDO Alliance as a board member. LINE is the second company to join from Japan. Becoming a FIDO member was one of LINE’s efforts for the endpoint security. I would like to talk about FIDO in detail on another occasion.
A total of four keynote speeches were presented in the morning:
- LINE’s Security: Now and Future
- Drawing the Line Correctly: Enough Security, Everywhere
- Frontiers of Cryptography
- Your Security, More Simple — Utilizing FIDO Authentication
Takeshi Nakayama, CISO of LINE, gave an opening keynote on the current status and the future of LINE’s security.
As of 2017, LINE, born as a messaging app in June 2011, is not limited to just a messaging app, but has grown into a “platform app”, cooperating with numerous services such as LINE Manga, LINE MUSIC, LINE LIVE, LINE Pay. We have grown globally, acquiring many users, especially from four Asia countries (Japan, Taiwan, Thailand, Indonesia). In order to ensure the security of such diverse service types and implementation form of globally deployed apps and services, LINE has been making efforts from various angles.
As an example, within the development lifecycle of LINE’s apps and services, we, the LINE’s security engineers provide security consultation, check code, and diagnose security, in all development phases. Not only do the security engineers monitor after releasing apps and services, we have been running the Bug Bounty Program to proactively collect undiscovered vulnerabilities and manage the quality of security. To prevent abusing such as spam or account hackings, LINE is putting much effort by improving account specification, developing and employing a system for automatic detection and blocking, based on machine learning.
Along with the futuristic services that make a full use of AI and IoT, LINE will continue to offer new kinds of apps and services in the future. LINE predicts that security problems will become more serious in the futuristic services. Obviously, LINE will have to take more serious measures against security issues. To build even more secure apps and services, LINE will continue on with their journey, exploring the unexplored with everlasting attempts.
At the end of the keynote, Nakayama announced that LINE has joined the FIDO Alliance* as a member of the Board. Follow the linkto find the press release.
* FIDO Alliance is a non-profit organization aiming to form international standardization specifications of highly convenient user authentication technology such as password-less.
Mr. Talal G. Shamoon, CEO of Intertrust, gave the second keynote. You can find the keynote slides and a summary of the keynote below.
Find the keynote slides from below:
Although modern Internet access systems face high and diverse problems, they were not originally designed with consideration for firm security. Internet is flexible, powerful, easy to penetrate, and was born for government and military, under the premise that “evil things will be outside of here”.
Looking back on the era, Multics, an OS made in 1965–75, had been designed with a concept of security on it, but the OS had failed. The successor was Unix, which had no concerns on security. Later on, Windows emerged for personal usage as well as for enterprise. Again, no security was considered in the design. Internet Explorer on Windows opened up the door for a vast population of people to the Internet. At the same time, a massive amount of vulnerabilities had been exposed. Next, Sun created Java as a medium to connect Unix, Windows, and the Internet. Although Java had been designed with security features, we all know Java still has many vulnerabilities. Such “security circus” is still repeating itself in the modern era, even with Android and iOS.
Even Eric Shmidt, the chairman of Google’s parent Alphabet, talked about this in his speech at RSA Conference 2017.
– The Internet world has been updated many times over and over due to security issues. If you ask “Why?” The answer is “I did not think there were criminals and others.”
Overlaying appropriate security technology on the Internet and OS can acquire security. But to ensure security, we need a solution that is more impenetrable and more robust than what is required for making a strong cryptography. Such solution requires securing runtime, building and deploying authentication mechanism, and applying tamper resistance on both software and hardware appropriately. These requirements didn’t just come out of nowhere; they have been with us for a while. Take Nijo Castle in Kyoto as an example. In this historical castle, you can easily find authentication mechanism, obfuscation, secure areas, and early warning system—the nightingale floor—implemented.
Selecting a proper tool is criticial in the security industry. In other words, we need to select a security solution that has no unnecessary complexity and no issues with usability or cost, but that which guarantees “enough” security.
LINE and Intertrust share a common goal; to build the Internet safe to use and business friendly. Both the companies will continue to accomplish this goal and continue to hold security summits.
Overall, the keynote covered the history of Internet and security in the order of Multics, UNIX, Windows and Java. All of these were emerged as the solutions to their previous systems but eventually they too raised new security issues. We realized that more the solution was distributed, more the vulnerabilities were exposed. The second part of keynote was Intertrust’s message and answer to the question, “How to build a robust and secure system?”
Intertrust Chief Scientist Rober Tarjan, a 1982 Turing Award winner, delivered the third keynote, “Frontiers in Cryptography”.
Find the keynote slides from below:
Black box encryption is used in many systems worldwide, but black box encryption has various problems such as ensuring hardware security. With the spread of smartphones and IoT devices, unmanaged devices—devices operating in an unprotected environment—are increasing ever more. As a result, white-box cryptography has been taken as a realistic cryptographic solution. However, there is a big gap between the theory and the practice of using white-box cryptography. Theoretically, security can be guaranteed using white-box cryptography, but in real, calculation and overheads usually become impractically large. As for obfuscation, white-box cryptography is actually used to make reverse engineering difficult.
Trajan emphasized indistinguishability obfuscation. White-box cryptography can be used to implement virtual black box, if used in combination with a one-way function. Unfortunately, virtual black box has been achieved only theoretically for now and is not implementable. However, virtual black box is indeed one of the active research areas for enhancing app security. In a modern world where threat models are constantly evolving, white-box security solutions can be used as a useful tool in the industries of mobile payment systems, connected cars (cars that are always connected on the Internet), medical equipment, and entertainment.
Koichi Moriyama, the senior director of product department at NTT DOCOMO, presented the last keynote on adopting FIDO at NTT Docomo, and the company’s activities with the FIDO Alliance.
Find the keynote slides from below:
The FIDO (Fast IDentity Online) Alliance consists of over 250 global companies and is a standards body promoting technical specifications and program management. The FIDO has opted public-key cryptography for online authentication to solve fundamental password problems (complicated, easily forgotten, requiring updates, password leakage due to server attacks and etc.).
The FIDO’s privacy policies are as follow:
- The authentication protocol is implemented with an end to end protocol without the intervention of a third party.
- No secrets are generated or stored on the server side.
- No link-ability between services and no link-ability between accounts; FIDO authentication key pairs exist per services.
The FIDO specifications are as follow:
- FIDO 1.1: Passwordless authentication, two-factor authentication
- CTAP(Client to Authenticator Protocol): A protocol between a client terminal that support WebAuthn and an authenticator
- WebAuthn (FIDO+W3C): Technical specification for adopting FIDO authentication in web services
- UVC (FIDO-EMVco): Specification for mobile payments using FIDO
NTT DOCOMO deployed FIDO compliant services in May 2015, starting with FIDO-enabled online authentication of the d ACCOUNTs. Continuing on, a total of 20 FIDO-enabled models have been released over 2015–2017. So, why did DOCOMO select FIDO UAF 1.0 standard? The reasons are as follows:
- UX improvement on on-line authentication through biometric authentication
- Consideration for security
- Open-standard for interoperability in the future
During the deployment, FIDO certified products were adopted on the d ACCOUNT authentication servers and clients. The biometric authentication devices provided during the deployment were also FIDO-enabled. NTT DOCOMO’s FIDO compliant services are provided both on Android and iOS.
To ensure security, all of the following four tasks, identified as crucial by the FIDO specification had been loaded on the TEE (Trusted Execution Environment):
- Generating private keys
- Matching biometric information
- Processing signatures
- Managing and storing private keys and biometric information
In addition, the services embraced NTT DOCOMO FIDO interoperability, meaning that various FIDO products, servers and service providers can use NTT DOCOMO’s FIDO-enabled services. Since February 2017, NTT DOCOMO have begun offering smartphone authentication on authenticating with biometric information on PC. You can get log in to a PC by authenticating using your biometric information on FIDO compatible smartphone.
NTT DOCOMO’s future plan is to build a world where passwords are not needed, just as their slogan says; “The new of today, the norm of tomorrow”. They will continue collaborating with the FIDO Alliance to realize “Your Security, More Simple”.
The FIDO Alliance/FIDO Alliance Japan Working Group has been conducting various activities such as translating, marketing and deploying, through sub working groups. Eighteen companies in Japan, including LINE, are participating in the FIDO Japan Wroking Group. Worldwide, as of May 17, 2017, over 250 members are engaged in the FIDO Alliance.
Session 1: Technology Trends in End Point security
Three speeches were given in the first session on technology trends in endpoint security as follow.
- Application security as crucial to the modern distributed trusted model
- Implementing trusted endpoints in the mobile world
- Client Security for Accelerating Game Development
Intertrust CTO David Maher presented the application security trust model for the future Mobile/IoT world.
Find the session slides from below:
Maher started by introducing the distributed trust model in the era of IoT and mobile, such as attack tolerance of apps and defense mechanism of software. He suggested to consider the following three drivers for using distributed trust model.
- Scale: In the near future, tens of billions of devices will be connected, a massive amount apps will be executed. There will be one trillion sensors and one hundred billion devices.
- Hyper-connectivity: Connections will be made through numerous types of networks, varying from new type of low-power network to SDN.
- Implication of Merger of the cyber world and physical world: Not only will computer resources be accessible but accesses to all types of physical resources will become available.
The goals of the distributed trust model are as follows:
To achieve these goals, connected devices and connected apps shall have the following three elements on them:
- Self-control mechanism
- Information showing the internal state of the device/app
- Sensor data
After ensuring you have all of the three elements above loaded on your device or app, select protection approaches as listed below:
- Incremental Discovery: Devices and applications on the network cannot be easily identified. Therefore servers can communicate with devices and apps only through commands and requests associated with membership credentials.
- Reference monitor for API calls and remote commands: The key used on authentication for remote requests, either command requests or access requests, made to devices and applications shall have been issued by trusted sources. The reference monitor filters all interactions (remote requests, access requests) using this key.
- Security associations (SA) and SA management: A Security Association (SA) is managed on one device (Device A) in the form of a permission list and a couple of unique encryption keys (usually a shared secret) for two devices (Device A, Device B). Each device bootstraps the SA to the initial SA and and then sets other SAs.
- Secure Key Vaults: Store the SA and application specific keys in a secure key storage area such as hardware or using white-box cryptography. You must use secure updates for all devices and applications. Installing new code on a device or changing the behavior of the application needs to be restricted to a special permission.
- Secure telemetry: Identify abnormal behavior and determine whether an entity is under attack. Prevent situations where alarms become inactive by hackers abusing telemetry and blocking alarm.
- Web based performance aids: Provide a monitoring system capable of early warning of attacks through risk analysis, abnormality detection, real-time threat assessment based on machine learning and so on. Provide secure telemetry by using Web-based performance aids.
- Virtualization and visualization: Using a web-based proxy that can provide an extended user interface, visualize internal information of apps or devices and even manage device groups.
Software’s self-protection mechanism on devices and the apps running on those devices is crucial. If you have appropriate security features on your device, you are highly likely to solve most of complex security issues on your device using external resources for cryptography, monitoring, and other countermeasures.
Nikolay from LINE’s application security team presented a topic on implementing reliable endpoints in the mobile world.
Find the session slides from below:
Here are the topics and points Nikolay made on endpoint security technology in his presentation:
- Changes in endpoint security on conventional desktops to that on mobile device.
- Core technology used to protect mobile devices.
- An overview of secure boot on iOS and Android. Code signing and application sandbox are used to ensure apps and data integrity on both platforms.
- Both iOS and Android has adopted the Mandatory Access Control (MAC) framework to manage the permissions of apps and processes according to the security policy.
- To monitor kernel in runtime to prevent bypassing the MAC, iOS has employed KPP (Kernel Patch Protection) and Android has employed Samsung’s Knox TIMS.
- For user data encryption, mainly File-Based Encryption (FBE) and Full Disk Encryption (FDE) are used.
- A secure environment is set apart from the main OS, to protect confidential information such as cryptographic keys and biometric templates, even if the OS is compromised. To accomplish this, iOS has adopted Secure Enclave Processor (SEP) and Android has the Trusted execution environment (TEE).
- Security needs at LINE; user-based characteristics and app-based ecosystem.
- Endpoint protection technologies currently being evaluated by LINE; TEE and hybrid trusted apps, white-box crytography and biometric authentication technologies such as FIDO.
Mr. Shota, a member of the security department of DeNA, a well known game company in Japan, gave a presentation on game development and client security.
Find the session slides from below:
Client security on games implies the countermeasures to prevent cheating actions by those who manipulates data to make their play advance in their favor. The following three types of game architecture affects DeNA’s approach to handling client security.
- Browser type: This type is for the games played on web browsers. In this case, most of the game logic resides on the server side and the client side is specialized for UI and directing. Since most logic is on the server side, there is a less cheating opportunities on the client side.
- Application type: This type is for mobile app games. Mobile app type is the most common implementation type. Since the client side hold a certain level of logic, interacts with players and processes the game logic, cheating could be easy. A rhythm game is an example of this type, has the logic on the client side, as the game needs to calculate score according to the player’s move.
- Baas-Application type: This type is for the games that use a common game server. Sharing a single server among numerous games is indeed cost-effective, but since many of the game logic needs to be processed on the client, the resistance to cheating is weak.
Unless we can get rid of the game logic on the client side completely, we have no option but to prepare a client security technology to reduce the number of cheats. Coming up with a solution requires various challenges. For example, an ideal solution would be a tamper-proof solution, but employing such solution is a different story. In doing so, we will surely face limitations on build environment, problems caused by different OS security levels, performance problems and so on.
Mr. Shota believes that client security technology can accelerate game development. Developers will have more options on choosing the right architecture, reduce the resources required to respond to cheats, and in the end, developers will be able to focus more on development. If the Baas-Application type is used, as game logic resides more on the client side, client security becomes quite handy and can speed up development. Summing up, needs will rise for the security solutions that is capable of balancing the impact on development efficiency, cost, robustness. He proclaimed that “game cheats are almost always possible. What’s more important is recognizing that making cheats difficult is what counts.”
In the second half of the session, Mr. Shota showed us a video clip of a demo on cheats on a sample game, which had been made with intentional vulnerabilities. The cheating made use of a proxy tool and binary analysis. The cheater began by browsing the game’s network communication using a proxy tool and found out that a particular parameter contains a base64-encoded string. The cheater analyzed the binary and looked up for functions with the name “base64” and ended up with a function named base64Decode. Further investigation revealed a function named xorDecode inside the base64Decode function. Inside the xorDecode function, a constant string literal was found that seemed to be masked. Then the cheater used an unmasking program to unmask the string and by using the proxy tool, he tampered the data (e.g. score) over the network. The game server was unable to catch this tampering. The cheater got ranked first. Coming up with such scenario is not a hard job. In such simple ways cheaters can penetrate into games.
This is the end of the first part of the post on LINE and Intertrust Security Summit 2017 Spring, Tokyo. To see the second part, click here.