Thursday, March 7, 2024
Prefer eSIMs
Monday, February 12, 2024
Surveillance, Legal and Otherwise
A New Jersey Court recently held that a "communication data warrant" was insufficient to compel Facebook to hand over a user's posts. Rather, under New Jersey's Wiretap and Electronic Surveillance Control Act, they would require a "wiretap" order. While both orders are "warrants" as required by the Fourth Amendment to the US Constitution, under NJ law the standards and permissions are different for the two orders. Said another way, it is the intention of the New Jersey legislature that surveillance in (near) real-time is more intrusive than a mere search warrant and must be more limited. The intent of the law is to resist abuse, not only by NJ investigators but also by the federal government.
While the US Code contains no such explicit distinction, both law and precedent require that warrants be explicit as to what methods may be employed and what evidence is sought. A warrant is not a carte blanche, a license to do anything the officer wants. In practice judges expect law enforcement to use the "least intrusive means" to investigate.
Governments around the globe, and law enforcement in particular, employ surveillance to detect and investigate communications that they wish to discourage. Some, like ours, recognize the potential for abuse and seek to resist it. None absolutely eschew its use. In some authoritarian states it is routine, a means of exercising power and control over the populous.
The most frequent justifications for surveillance are crime, specifically CSAM and terrorism. The rules are often "collect everything, forget nothing, admit nothing." Data collected for legitimate purposes constitutes a temptation, not to say an invitation, to other uses.
While the US Constitution requires probable cause for both searches and seizures, in practice seizures are routine and warrants are required only for searches. While under the Constitution the test is "reasonableness," in practice and precedent the threshold for requiring a warrant has become whether or not the subject has an "expectation of privacy;" reasonableness is no longer even considered.
In the US the requirement for a warrant is routinely bypassed by purchasing "surveillance as a service" in the open market. Investigators simply pay a small fee to so called data brokers. This is much more efficient than creating a government database.
In summary the protection against unreasonable search and seizure guaranteed in the Fourth Amendment to the US Constitution have been whittled away. While there is little evidence that the current administration is engaged in massive surveillance, it happened under the GWB administration. There is little left to protect us against abuse by future administrations.
The Role of the Chief Information Security Officer (CISO)
There is a great deal of discussion of late about the liability of the Chief Information Security Officer for security breaches. Seems to me that the biggest problem with CISO is a misunderstanding of the role. CISOs are staff, not line. They are not responsible for security, line managers are. They are not responsible for preventing breaches, line managers are.
They are responsible for recommending the expression of enterprise risk tolerance and security policy but not for setting them; that is a governance decision to be made by the board of directors. They are responsible for articulating strategy but not for adopting or implementing it. They are responsible for coordinating implementation of strategy across functions and departments. They are responsible for recommending essential and efficient security measures but not for implementing them. They are responsible for recommending standards, for measuring against them and reporting on them but not for complying with them. They are responsible for measuring enterprise IT risk and for reporting on it to general management.
The wise CISO negotiates his success before taking the job. When his recommendations are not adopted, he documents the risk, asks the responsible line manager to sign the risk acceptance document, records the risk acceptance, and asks that the decision be revisited annually or when there is a change in responsible management.
Monday, November 6, 2023
Artificial Intelligence
Artificial intelligence, AI, is a new user interface to the computer. Large language models (LLMs) make the computer easier to use. They permit us to describe the result that we want in natural language. improving productivity and enabling new applications. AI will improve intellectual productivity as much as the internal combustion did for manual productivity. In response to internal combustion, and more specifically the tractor, we shortened the work week from 72 hours to 44 and invented vacations and retirement. In the process, we killed off two generations of young men and still suffered 25% unemployment. Said another way, increases in productivity are disruptive.
The computer, with or without AI, is a tool. Tools vary in quality, utility, usability, and use. The user is responsible for the selection of the tool, the purpose to which it is put, and for all the properties of the result. This is true whether the user is an individual or a group. An enterprise must be responsible and accountable for everything that results from its application of this powerful technology. We call this security and we forget any part of it at our peril. We must not impute authority or autonomy to the tool; we must not anthropomorphize the tool. "The craftsman does not blame his tools." We must hold people accountable for how we use this powerful new tool.
In the near term we should focus on embedded application specific implementations of AI. We should follow the example of IBM, a pioneer in the field. IBM trains the engine, think Watson, on application specific curated data; they build in governance and transparency from the ground up.
Public policy must soften the impact of the disruption. This will include shortening the work week to spread the work and the leisure. It should include a guaranteed minimum income to ease transition from old jobs and skills to new ones. Finally, it should include changes in tax policy from labor to capital, people to robots, and production to consumption, to more securely and equitably finance the social safety net.
Monday, July 10, 2023
Common System Design Flaws
• Complexity
• Incomplete Parameter Checking
• Incomplete Error Handling
• Ineffective Binding
• Inadequate Granularity of Controls
• Gratuitous Functionality
• Escape Mechanisms
• Excessive Privilege
• Failure to a Privileged State
• Unsafe Defaults
• Excessive Reliance on Application Controls
• Others
Examples and illustrations of these common flaws are discussed at length in the paper.
The following recommendation should be considered when crafting and staging applications. By adhering to these recommendations the programmer and the application manager may avoid many of the errors outlined in this chapter.
• Enforce all restrictions upon which you rely.
• Check and restrict all input parameters to the intended length and code type.
• Prefer short and simple programs and program modules.
• Prefer programs with only one entry point at the top or beginning and only one exit at the bottom or end.
• Prefer reliance upon well-tested common routines for both parameter checking and error correction. Consider the use of routines supplied with the database client. Parameter checking and error correcting code is difficult to design, write, and test. It is best assigned to master programmers.
• Fail applications to the safest possible state. Prefer failing multi-user applications to a halt or to logon rather than to a new instance of the application or the environment (e.g., operating system).
• Limit applications to the least possible privileges. Prefer the privileges of the user. Otherwise, use a limited profile created and used only for the purpose. Never grant an application system-wide privileges. (Since the programmer cannot anticipate the environment in which the application may run
and the system manager may not understand the risks, exceptions to this rule are extremely dangerous.)
• Bind applications end-to-end to resist control bypass. Prefer trusted single system environment. Otherwise use a trusted path (e.g., dedicated local connection, end-to-end encryption, or a carefully crafted combination of the two). Include in an application user’s privileges only that functionality that is essential to their use of the application. Consider dividing the application into multiple objects requiring separate authorization so as to facilitate involving multiple users in sensitive duties.
• Controls should default to safe settings. Where the controls are complex or interact in subtle ways, provide scripts (“wizards”), or profiles.
• Prefer localized controls close to the data, e.g., prefer file system to application, database manager to file system. Prefer authentication of users (or using processes) close to the user (e.g., on the mobile client.)
• Use cryptographic techniques (e.g.,digital signatures) to verify the integrity of the code and to resist bypass of the controls.
• Prefer applications and other programs from known and trusted sources in tamper-evident packaging.
Monday, May 15, 2023
Cyber Resilience
Mr. Basu's observations are at odds with mine. If enterprise was more focused on prevention, than for example on insurance, we would not have the successful extortion industry that we see today.
In the early days of IT we called the security measure of last resort, "backup and recovery." It focused primarily on human error and disasters, limited to a data center or an enterprise. As the technology matured and we became increasingly dependent on IT, we called it "business continuity." It focused on running the business in the face of both natural and man-made risks.
Today, when our entire infrastructure is dependent upon vulnerable, not to say fragile, interconnected systems of energy, communication, and finance, we call it "resilience." It focuses on "Black Sky" events. The risk is to "national security," not to say survival.
While I grant Mr. Basu the importance of resilience, I suggest that the most efficient way to achieve it is by prevention, by dramatically improving the quality and robustness of our systems. We need to increase their resistance to both natural events and malicious attacks by a decimal order of magnitude. Fortunately for us, doing so, both individually and collectively, is efficient.
We know what to do:
- Strong Authentication
- Least Privilege Access Control
- Process-to-Process Isolation, logging, and authentication
- Structured Network
- Application Layer End-to-End Encryption
- Privileged Access Management
- Redundancy
- Data, Application, System, Network, and Enterprise Persistence, Continuity, and Recovery
- Law Enforcement
- Other