(Ebook) Security for Web Developers - Using JavaScript, HTML, and CSS (Early Release, Raw & Unedited) by John Paul Mueller ISBN 9781491928646, 1491928646 pdf download
(Ebook) Security for Web Developers - Using JavaScript, HTML, and CSS (Early Release, Raw & Unedited) by John Paul Mueller ISBN 9781491928646, 1491928646 pdf download
https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374
https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312
https://ebooknice.com/product/sat-ii-success-
math-1c-and-2c-2002-peterson-s-sat-ii-success-1722018
(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master the SAT
Subject Test: Math Levels 1 & 2) by Arco ISBN 9780768923049,
0768923042
https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-
arco-master-the-sat-subject-test-math-levels-1-2-2326094
(Ebook) Cambridge IGCSE and O Level History Workbook 2C - Depth Study:
the United States, 1919-41 2nd Edition by Benjamin Harrison ISBN
9781398375147, 9781398375048, 1398375144, 1398375047
https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044
https://ebooknice.com/product/javascript-for-modern-web-development-
building-a-web-application-using-html-css-and-javascript-49177184
(Ebook) Using SVG with CSS3 and HTML5: Vector Graphics for Web Design
(Early Release, Raw & Unedited) by Amelia Bellamy-Royds, Kurt Cagle,
Dudley Storey ISBN 9781491921975, 1491921978
https://ebooknice.com/product/using-svg-with-css3-and-html5-vector-
graphics-for-web-design-early-release-raw-unedited-6761666
(Ebook) Amazon Web Services for Developers For Dummies by John Paul
Mueller ISBN 9781119371892, 1119371899
https://ebooknice.com/product/amazon-web-services-for-developers-for-
dummies-50195924
https://ebooknice.com/product/learning-react-functional-web-
development-with-react-and-redux-early-release-raw-unedited-5771042
O’Reilly Media, Inc. 7/21/2015
I
Developing a Security Plan
1
O’Reilly Media, Inc. 7/21/2015
1
Defining the Application
Environment
Data is the most important resource that any business owns. It’s literally possible to
replace any part of a business except the data. When the data is modified, corrupted,
stolen, or deleted, a business can suffer serious loss. In fact, a business that has enough go
wrong with its data can simply cease to exist. The focus of security, therefore, is not
hackers, applications, networks, or anything else someone might have told you—it’s data.
Therefore, this book is about data security, which encompasses a broad range of other
topics, but it’s important to get right to the point of what you’re really looking to protect
when you read about these other topics.
Unfortunately, data isn’t much use sitting alone in the dark. No matter how fancy your
server is, no matter how capable the database that holds the data, the data isn’t worth
much until you do something with it. The need to manage data brings applications into
the picture and the use of applications to manage data is why this introductory chapter
talks about the application environment.
However, before you go any further, it’s important to decide precisely how applications
and data interact because the rest of the chapter isn’t very helpful without this inside. An
application performs just four operations on data, no matter how incredibly complex the
application might become. You can define these operations by the CRUD acronym:
• Create
• Read
• Update
• Delete
The sections that follow discuss data, applications, and CRUD as they relate to the web
environment. You discover how security affects all three aspects of web development,
keeping in mind that even though data is the focus, the application performs the required
CRUD tasks. Keeping your data safe means understanding the application environment
and therefore the threats to the data the application manages.
1
O’Reilly Media, Inc. 7/21/2015
Code injection occurs more often than you might think. In some cases,
the code injection isn’t even part of an attack, but it might as well be. A
recent article (see http://www.infoworld.com/article/2925839/net-
neutrality/code-injection-new-low-isps.html) discusses how Internet
Service Providers (ISPs) are injecting JavaScript code into the data
stream in order to overlay ads on top of a page. In order to determine
what sort of ad to provide, the ISP also monitors the traffic.
Few experts remind you to check your output data. However, you don’t
actually know that your own application is trustworthy. A hacker could
modify it to allow tainted output data. Verification checks should
include output data as well as input data.
2
O’Reilly Media, Inc. 7/21/2015
• File Uploads: Every file upload, even those that might seem otherwise innocuous, is
suspect. If possible, disallow file uploads to your server. Of course, it isn’t always
possible to provide this level of security, so you need to allow just certain types of
file and then scan the file for problems. Authenticating the file as much as is possible
is always a good idea. For example, some files contain a signature at the beginning
that you can use to ensure the file is legitimate. Don’t rely on file extension
exclusion alone—hackers often make one file look like another type in order to
bypass server security.
• Hard Coded Authentication: Developers often place authentication information in
application initialization files for testing purposes. It’s essential to remove these hard
coded authentication entries and rely on a centralized data store for security
information instead. Keeping the data store in a secure location, off the server used
for web applications, is essential to ensuring that hackers can’t simply view the
credentials used to access the application in certain ways. If you do need
initialization files for the application, make sure these files reside outside the
webroot directory to ensure that hackers can’t discover them accidentally.
• Hidden or Restricted File/Directory Discovery: When your application allows input
of special characters such as the forward slash (/) or backslash (\), it’s possible for a
hacker to discover hidden or restricted files and directories. These locations can
contain all sorts of information that a hacker can find useful in attacking your
system. Disallowing use of special characters whenever possible is a great idea. In
addition, store critical files outside the webroot directory in locations that the
operating system can control directly.
• Missing or Incorrect Authentication: It’s important to know whom you’re dealing
with, especially when working with sensitive data. Many web applications rely on
common accounts for some tasks, which means it’s impossible to know who has
accessed the account. Avoid using guest accounts for any purpose and assign each
user a specific account to use.
• Missing or Incorrect Authorization: Even if you know the person you’re dealing
with, it’s important to provide only the level of authorization needed to perform a
given task. In addition, the authorization should reflect the user’s method of access.
A desktop system accessing the application from the local network is likely more
secure than a smartphone accessing the application from the local coffee shop.
Relying on security promotion to assist in sensitive tasks lets you maintain minimal
rights the rest of the time. Anything you can do to reduce what the user is authorized
to do helps maintain a secure environment.
• Missing or Incorrect Encryption: Use encryption to transmit data of any sort between
two endpoints to help keep hackers from listening in on your communication. It’s
important to keep track of the latest encryption techniques and rely on the best
encryption supported by the user’s environment. For example, Triple Data
Encryption Standard (3DES) isn’t secure any longer, yet some organizations
continue to use it. The current Advanced Encryption Standard (AES) remains mostly
secure, but you want to use the largest key possible to help make it harder to crack.
• Operating System Command Injection: An attacker modifies an operating system
command your application uses to perform specific tasks. Your web-based
application probably shouldn’t use operating system calls in the first place. However,
if you absolutely must make operating system calls, make sure the application runs
in a sandbox.
3
O’Reilly Media, Inc. 7/21/2015
Some experts will emphasize validating input data for some uses and
leave the requirement off for other uses. Always validate any data you
receive from anywhere. You have no way of knowing what vehicle a
hacker will use to obtain access to your system or cause damage in
other ways. Input data is always suspect, even when the data comes
from your own server. Being paranoid is a good thing when you’re
performing security-related tasks.
Many experts will recommend that you use vetted libraries and
frameworks to perform dangerous tasks. However, these add-ons are
simply more code. Hackers find methods for corrupting and
circumventing library and framework code on a regular basis. You still
have a need to ensure your application and any code it relies upon
interacts with outside elements safely, which means performing
extensive testing. Using libraries and frameworks does reduce your
support costs and ensures that you get timely fixes for bugs, but the
bugs still exist and you still need to be on guard. There is no security
silver bullet. Chapter 6 contains more information about working with
libraries and frameworks.
• Session Hijacking: Every time someone logs into your web server, the server gives
that user a unique session. A session hijacker jumps into the session and intercepts
data transferred between the user and the server. The three common places to look
for information used to hijack a session are: cookies, URL rewriting, and hidden
fields. Hackers look for session information in these places. By keeping the session
information encrypted, you can reduce the risk of someone intercepting it. For
example, make sure you rely on the HTTPS protocol for logins. You also want to
avoid doing things like making your session IDs predictable.
• SQL Injection: An attacker modifies a query that your application creates as the
result of user or other input. In many cases, the application requests query input data,
but it receives SQL elements instead. Other forms of SQL injection attack involve
the use of escape or other unexpected characters or character sequences. A good way
to avoid SQL injection attacks is to avoid dynamically generated queries.
This may look like a lot of different threats, but if you search long enough online, you
could easily triple the size of this list and not even begin to scratch the surface of the
4
O’Reilly Media, Inc. 7/21/2015
ways in which a hacker can make your life interesting. As this book progresses, you’ll
encounter a much larger number of threat types and start to discover ways to overcome
them. Don’t worry, in most cases the fixes end up being common sense and a single fix
can resolve more than one problem. For example, look through the list again and you’ll
find that simply using HTTPS solves a number of these problems.
5
O’Reilly Media, Inc. 7/21/2015
misuse of the data and resources that it uses, controls, and protects. This requirement
appears as part of SSA. The following sections discuss SSA in more detail.
SSA isn’t an actual standard at this time. It’s a concept that many
organizations quantify and put into writing based on that organization’s
needs. The same basic patterns appear in many of these documents and
the term SSA refers to the practice of ensuring software remains secure.
You can see how SSA affects many organizations, such as Oracle
(http://www.oracle.com/us/support/assurance/overview/index.html) and
Microsoft
(https://msdn.microsoft.com/library/windows/desktop/84aed186-1d75-
4366-8e61-8d258746bopq.aspx) by reviewing that organizations SSA
documentation online. In fact, many large organizations now have
some form of SSA in place.
6
O’Reilly Media, Inc. 7/21/2015
Figure 1-1. The OWASP site tells you about SSA for web applications.
Even though OSSAP does provide a great framework for ensuring your
application meets SSA requirements, there is no requirement that you
interact with this group in any way. The group does license its approach
to SSA. However, at this time, the group is just getting underway and
you’ll find a lot of TBDs on the site will the group plans to fill in as
time passes. Of course, you need a plan for today, so OWASP and its
OSSAP present a place for you to research solutions for now and
possibly get additional help later.
The whole reason to apply SSA to your application as part of the SDLC is to ensure that
the software is as reliable and error free as you can make it. When talking with some
people, the implication is that SSA will fix every potential security problem that you
might encounter, but this simply isn’t the case. SSA will improve your software, but you
can’t find any pieces of software anywhere that are error free. Assuming that you did
manage to create a piece of error free software, you still have user, environment, network,
and all software of other security issues to consider. Consequently, SSA is simply one
piece of a much larger security picture and implementing SSA will only fix so many
security issues. The best thing to do is to continue seeing security as an ongoing process.
7
O’Reilly Media, Inc. 7/21/2015
8
O’Reilly Media, Inc. 7/21/2015
determine where and how to spend money in order to obtain the best Return on
Investment (ROI), while still meeting application security goals.
It’s important to understand that security isn’t just about the code—it’s
also about the tools required to create the code and the skill of the
developers employing those tools. When an organization chooses the
wrong tools for the job, the risk of a security breach becomes much
higher because the tools may not create code that performs precisely as
expected. Likewise, when developers using the tool don’t have the
required skills, it’s hardly surprising that the software has security holes
that a more skilled developer would avoid.
Some experts claim that there are companies that actually allow
substandard work. In most cases, the excuse for allowing such work is
that the application development process is behind schedule or that the
organization lacks required tools or expertise. The fact that an
organization may employ software designed to help address security
issues (such as a firewall), doesn’t alieve the developer of the
responsibility to create secure code. Organizations need to maintain
coding standards to ensure a good result.
Logic
Interacting with an application and the data it manages is a process. Even though users
might perform tasks in a seemingly random fashion, specific tasks follow patterns that
occur because the user must follow a procedure in order to obtain a good result. By
documenting and understanding these procedures, you can analyze application logic from
a practical perspective. Users rely on a particular procedure because of the way in which
developers design the application. Changing the design will necessarily change the
procedure.
The point of the analysis is to look for security holes in the procedure. For example, the
application may allow the user to remain logged in, even if it doesn’t detect activity for
an extended period. The problem is that the user might not even be present—someone
else could access the application using the users credentials and no one would be the
wiser because everyone would think that the user is logged in using the same system as
always.
However, data holes can take other forms. A part number might consist of various
quantifiable elements. In order to obtain a good part number, the application could ask for
the elements, rather than the part number as a whole, and build the part number from
those elements. The idea is to make the procedure cleaner, clearer, and less error prone so
that the database doesn’t end up containing a lot of bad information.
9
O’Reilly Media, Inc. 7/21/2015
Data
It may not seem like you can perform much analysis on data from a security perspective,
but there really are a lot of issues to consider. In fact, data analysis is one of the areas
where organizations fall down most because the emphasis is on how to manage and use
the data, rather than on how to secure the data (it’s reasonable to assume you need to
address all three issues). When analyzing the data, you must consider these issues:
• Who can access the data
• What format is used to store the data
• When the data is accessible
• Where the data is stored
• Why each data item is made available as part of the application
• How the data is broken into components and the result of combining the data for
application use
For example, some applications fail to practice data hiding, which is an essential feature
of any good application. Data hiding means giving the user only the amount of
information actually needed to perform any given task.
Applications also format some data incorrectly. For example, storing passwords as text
will almost certainly cause problems should someone break in. A better route is to store
the password hash. The hash isn’t at all valuable to someone who has broken in because
the application needs the password on which the hash is based.
Making all data accessible all the time is also a bad idea. Sensitive data should only
appear on screen when someone is available to monitor its use and react immediately
should the user do something unexpected.
Storing sensitive data in the cloud is a particularly bad idea. Yes, using cloud storage
makes the data more readily available and faster to access as well, but it also makes the
data vulnerable. Store sensitive data on local servers when you have direct access to all
the security features used to keep the data safe.
Application developers also have a propensity for making too much information
available. You use data hiding to keep manager-specific data hidden from other kinds of
users. However, some data has no place in the application at all. If no one actually needs
a piece of data to perform a task, then don’t add the data to the application.
Many data items today are an aggregation of other data elements. It’s possible for a
hacker to learn a lot about your organization by detecting the form of aggregation used
and taking the data item apart to discover the constituent parts. It’s important to consider
how the data is put together and to add safeguards that make it harder to discover the
source of that data.
Interface
A big problem with software today is the inclusion of gratuitous features. An application
is supposed to meet a specific set of goals, perform a specific set of tasks. Invariably,
someone gets the idea that the software might be somehow better if it had certain features
that have nothing to do with the core goals the software is supposed to meet. The term
feature bloat has been around for a long time. You normally see it discussed in a
monetary sense—as the source of application speed problems, the elevator of user
10
O’Reilly Media, Inc. 7/21/2015
training costs, and the wrecker of development schedules. However, application interface
issues, those that are often most affected by feature bloat, have a significant impact on
security in the form of increased attack surface. Every time you increase the attack
surface, you provide more opportunities for a hacker to obtain access to your
organization. Getting rid of gratuitous features or moving them to an entirely different
application, will reduce the attack surface—making your application a lot more secure.
Of course, you’ll save money too.
Another potential problem is the hint interface—one that actually gives the security
features of the application away by providing a potential hacker with too much
information or too many features. Even though the password used to help a user retrieve a
lost password is necessary, some implementations actually make it possible for a hacker
to retrieve the user’s password and become that user. The hacker might even lock the real
user out of the account by changing the password (although, this action would be
counterproductive because an administrator could restore the user’s access quite easily).
A better system is to ensure that the user actually made the request before doing anything
and then ensuring that the administrator sends the login information in a secure manner.
Constraint
A constraint is simply a method of ensuring that actions meet specific criteria before the
action is allowed. For example, disallowing access to data elements unless the user has a
right to access them is a kind of constraint. However, constraints have other forms that
are more important. The most important constraint is determining how any given user can
manage data. Most users only require read access to data, yet applications commonly
provide read/write access, which opens a huge security hole.
Data has constraints to consider as well. When working with data, you must define
precisely what makes the data unique and ensure the application doesn’t break any rules
regarding that uniqueness. With this in mind, you generally need to consider these kinds
of constraints:
• Ensure the data is the right type
• Define the range of values the data can accept
• Specify the maximum and minimum data lengths
• List any unacceptable data values
11
O’Reilly Media, Inc. 7/21/2015
smartphone without any special coding on the part of the developer. Often, libraries,
APIs, and microservices provide content in a form that matches the host system
automatically, without any developer intervention. However, the flexibility that HTML5
provides can also be problematic. The following list describes some key security issues
you experience when working with HTML5.
• Code Injection: HTML5 provides a large number of ways in which a hacker could
inject malicious code, including sources you might not usually consider suspicious,
such as a YouTube video or streamed music.
• User Tracking: Because your application uses code from multiple sources in most
cases, you might find that a library, API, or microservice actually performs some
type of user tracking that a hacker could use to learn more about your organization.
Every piece of information you give a hacker makes the process of overcoming your
security easier.
• Tainted Inputs: Unless you provide your own input checking, HTML5 lets any input
the user wants to provide through. You may only need a numeric value, but the user
could provide a script instead. Trying to check inputs thoroughly to ensure you really
are getting what you requested is nearly impossible on the client side, so you need to
ensure you have robust server-side checking as well.
12
O’Reilly Media, Inc. 7/21/2015
13
O’Reilly Media, Inc. 7/21/2015
As the book progresses, you find some useful techniques for making a breach less likely.
The essentials of preventing a breach, once you admit a breach can (and probably will)
occur, are to:
• Create applications that users understand and like to use (see Chapter 2)
• Choose external data sources carefully (see the “Accessing External Data” section of
this chapter for details)
• Build applications that provide natural intrusion barriers (see Chapter 4)
• Test the reliability of the code you create, and carefully record both downtime and
causes (see Chapter 5)
• Choose libraries, APIs, and microservices with care (see the “Using External Code
and Resources” section of this chapter for details)
• Implement a comprehensive testing strategy for all application elements, even those
you don’t own (see Part III for details)
14
O’Reilly Media, Inc. 7/21/2015
15
O’Reilly Media, Inc. 7/21/2015
actually creates appropriate logs. Part of the remediation process is to build logging and
tracking functionality into the application in the first place. Without this information,
trying to find the culprit so that your organization can stop the attack is often a lost cause.
Your procedures should include a strategy for checking for updates or patches for each
component used by your application. Maintaining good application documentation is a
must if you want to achieve this goal. It’s too late to create a list of external resources at
the time of a breach, you must have the list in hand before the breach occurs. Of course,
the development team will need to test any updates that the application requires in order
to ensure that the breach won’t occur again. Finally, you need to ensure that the data has
remained safe throughout the process and perform any data restoration your application
requires.
A major problem with most cloud storage is that it’s public in nature.
For example, Dropbox for Business sounds like a great idea and it does
provide additional security features, but the service is still public. A
business can’t host the service within its own private cloud.
In addition, most cloud services advertise that they encrypt the data on
their servers, which is likely true. However, the service provider
usually holds the encryption keys under the pretense of having to allow
authorities with the proper warrants access to your data. Because you
don’t hold the keys to your encrypted data, you can’t control access to
it and the encryption is less useful than you might think.
Security of Web applications is a big deal because most applications tomorrow (if not all
of them) will have a web application basis. Users want their applications available
everywhere and the browser is just about the only means of providing that sort of
functionality on so many platforms in an efficient manner. In short, you have to think
about the cloud storage issues from the outset. You have a number of options for dealing
with cloud storage as part of your application strategy.
• Block Access: It’s actually possible to block all access to cloud storage using a
firewall, policy, or application feature. However, the ability to block access
everywhere a user might want to access cloud storage is extremely hard and users are
quite determined. In addition, blocking access can actually have negative effects on
meeting business needs. For example, partners may choose to use cloud storage as a
16
O’Reilly Media, Inc. 7/21/2015
method for exchanging large files. A blocking strategy also incurs user wrath so that
the users don’t work with your application or find ways to circumvent the
functionality you sought to provide. This is the best option to choose when your
organization has to manage large amounts of sensitive data, has legal requirements
for protecting data, or simply doesn’t need the flexibility of using cloud storage.
• Allow Uncontrolled Access: You could choose to ignore the issues involved in using
cloud storage. However, such a policy opens your organization to data loss, data
breaches, and all sorts of other problems. Unfortunately, many organizations
currently use this approach because controlling user access has become so difficult
and the organization lacks the means of using some other approach.
• Relying on Company Mandated Security Locations: If you require users to access
cloud storage using a company account, you can at least monitor file usage and have
the means to recover data when an employee leaves. However, the basic problems
with cloud storage remain. A hacker with the right knowledge could still access the
account and grab your data or simply choose to snoop on you in other ways. This
option does work well if your organization doesn’t manage data with legally required
protections and you’re willing to exchange some security for convenience.
• Control Access Within the Application: Many cloud services support an Application
Programming Interface (API) that allows you to interact with the service in unique
ways. Even though this approach is quite time consuming, it does offer the advantage
of letting you control where the user stores sensitive data, while still allowing the
user the flexibility to use cloud storage for less sensitive data. You should consider
this solution when your organization needs to interact with a large number of
partners, yet also needs to manage large amounts of sensitive or critical data.
• Rely on a Third Party Solution: You can find third party solutions, such as Accellion
(http://www.accellion.com/) that provide cloud storage connectors. The vendor
provides a service that acts as an intermediary point between your application and
the online data storage. The user is able to interact with data seamlessly, but the
service controls access using policies that you set. The problem with this approach is
that you now have an additional layer to consider when writing the application. In
addition, you must trust the third party providing the connector. This particular
solution works well when you need flexibility without the usual development costs
and don’t want to create your own solution the relies on API access.
17
O’Reilly Media, Inc. 7/21/2015
Like any other piece of software, jQuery has its faults too. As the book
progresses, you’re introduced to other libraries and to more details
about each one so that you can start to see how features and security go
hand-in-hand. Because jQuery is such as large, complex library it has a
lot to offer, but there is also more attack surface for hackers to exploit.
18
Exploring the Variety of Random
Documents with Different Content
and yet they were older than Miss Susan’s recollection could carry. The rest
of the furniture dated much further back. The fire-place, in which great logs
of wood blazed every Winter, was filled with branches of flowering shrubs,
and the larger old-fashioned garden flowers, arranged in some huge blue
and white China jars, which would have struck any collector with envy.
Miss Susan placed her young visitors on an old, straight-backed settle,
covered with stamped leather, which was extremely quaint, and very
uncomfortable. She took herself one of the heavy-fringed, velvet-covered
chairs, and began with deadly civility to talk. Everard placed himself
against the carved mantel-piece and the bank of flowers that filled the
chimney. The old room was so much the brighter to him for the presence of
the girls; he did not care much that Sophy was silly. Their pretty faces and
bright looks attracted the young man; perhaps he was not very wise himself.
It happens so often enough.
And thus they all sat down and talked—about the beautiful weather,
about the superiority, even to this beautiful weather, of the weather
“abroad;” of where they had been and what they had seen; of Mrs. Farrel-
Austin’s health, who was something of an invalid, and rarely came out; and
other similar matters, such as are generally discussed in morning calls.
Everard helped Miss Susan greatly to keep the conversation up, and carry
off the visit with the ease and lightness that were desirable, but yet I am not
sure that she was grateful to him. All through her mind, while she smiled
and talked, there kept rising a perpetual contrast. Why were these two so
bright and well, while the two children of the old house were in such sad
estate?—while they chattered and laughed what might be happening
elsewhere? and Everard, who had been like a brother to Herbert and Reine,
laughed too, and chattered, and made himself pleasant to these two girls,
and never thought—never thought! This was the sombre under-current
which went through Miss Susan’s mind while she entertained her callers,
not without sundry subdued passages of arms. But Miss Susan’s heart beat
high, in spite of herself, when Mr. Farrel-Austin lingered behind his
daughters, bidding Everard see them to the carriage.
“Cousin Susan, I should like a word with you,” he said.
CHAPTER III.
T he girls went out into the old corridor, leaving the great carved door of
the dining-hall open behind them. The flutter of their pretty dresses
filled the picturesque passage with animation, and the sound of their
receding voices kept up this sentiment of life and movement even after they
had disappeared. Their father looked after them well pleased, with that
complacence on his countenance, and pleasant sense of personal well-being
which is so natural, but so cruel and oppressive to people less well off. Miss
Susan, for her part, felt it an absolute insult. It seemed to her that he had
come expressly to flaunt before her his own happiness and the health and
good looks of his children. She turned her back to the great window, that
she might not see them going across the lawn, with Everard in close
attendance upon them. A sense of desertion, by him, by happiness, by all
that is bright and pleasant in the world, came into her heart, and made her
defiant. When such a feeling as this gets into the soul, all softness, all
indulgence to others, all favorable construction of other people’s words or
ways departs. They seemed to her to have come to glory over her and over
Herbert dying, and Reine mourning, and the failure of the old line. What
was grief and misery to her was triumph to them. It was natural perhaps, but
very bitter; curses even, if she had not been too good a woman to let them
come to utterance, were in poor Miss Susan’s heart. If he had said anything
to her about his girls, as she expected, if he had talked of them at all, I think
the flood must have found vent somehow; but fortunately he did not do this.
He waited till they were out of the house, and then rose and closed the door,
and reseated himself facing her, with something more serious in his face.
“Excuse me for waiting till they had gone,” he said. “I don’t want the
girls to be mixed up in any family troubles; though, indeed, there is no
trouble involved in what I have to tell you—or, at least, so I hope.”
The girls were crossing the lawn as he spoke, laughing and talking,
saying something about the better training of the roses, and how the place
might be improved. Miss Susan caught some words of this with ears
quickened by her excited feelings. She drew her chair further from the
window, and turned her back to it more determinedly than ever. Everard,
too! he had gone over to the prosperous side.
“My dear cousin,” said Mr. Farrel-Austin, “I wish you would not treat
me like an enemy. Whenever there is anything I can do for you, I am always
glad to do it. I heard that you were making inquiries after our great-uncle
Everard and his descendants, if he left any.”
“You could not miss hearing it. I made no secret of it,” said Miss Susan.
“We have put advertisements in the newspapers, and done everything we
possibly could to call everybody’s attention.”
“Yes; I know, I know; but you never consulted me. You never said,
‘Cousin, it is for the advantage of all of us to find these people.’ ”
“I do not think it is for your advantage,” said Miss Susan, looking
quickly at him.
“You will see, however, that it is, when you know what I have to tell
you,” he said, rubbing his hands. “I suppose I may take it for granted that
you did not mean it for my advantage. Cousin Susan, I have found the
people you have been looking for in vain.”
The news gave her a shock, and so did his triumphant expression; but
she put force upon herself. “I am glad to hear it,” she said. “Such a search
as mine is never in vain. When you have advantages to offer, you seldom
fail to find the people who have a right to those advantages. I am glad you
have been successful.”
“And I am happy to hear you say so,” said the other. “In short, we are in
a state of agreement and concord for once in our lives, which is delightful. I
hope you will not be disappointed, however, with the result. I found them in
Bruges, in a humble position enough. Indeed, it was the name of Austin
over a shop door which attracted my notice first.”
He spoke leisurely, and regarded her with a smile which almost drove
her furious, especially as, by every possible argument, she was bound to
restrain her feelings. She was strong enough, however, to do this, and
present a perfectly calm front to her adversary.
“You found the name—over a shop door?”
“Yes, a drapery shop; and inside there was an old man with the Austin
nose as clear as I ever saw it. It belongs, you know, more distinctly to the
elder branch than to any other portion of the family.”
“The original stock is naturally stronger,” said Miss Susan. “When you
get down to collaterals, the family type dies out. Your family, for instance,
all resemble your mother, who was a Miss Robinson, I think I have heard?”
This thrust gave her a little consolation in her pain, and it disturbed her
antagonist in his triumph. She had, as it were, drawn the first blood.
“Yes, yes; you are quite right,” he said; “of a very good family in Essex.
Robinsons of Swillwell—well-known people.”
“In the city,” said Miss Susan, “so I have always heard; and an excellent
thing, too. Blood may not always make its way, but money does; and to
have an alderman for your grandfather is a great deal more comfortable
than to have a crusader. But about our cousin at Bruges,” she added,
recovering her temper. How pleasant to every well-regulated mind is the
consciousness of having administered a good, honest, knock-down blow!
Mr. Farrel-Austin glanced at her out of the light gray eyes, which were
indisputable Robinsons’, and as remote in color as possible from the deep
blue orbs, clear as a Winter sky, which were one of the great points of the
Austins; but he dared not take any further notice. It was his turn now to
restrain himself.
“About our cousin in Bruges,” he repeated with an effort. “He turns out
to be an old man, and not so happy in his family as might be wished. His
only son was dying—”
“For God’s sake!” said Miss Susan, moved beyond her power of control,
and indeed ceasing to control herself with this good reason for giving way
—“have you no heart that you can say such words with a smile on your
face? You that have children yourself, whom God may smite as well as
another’s! How dare you? how dare you? for your own sake!”
“I don’t know that I am saying anything unbecoming,” said Mr. Farrel.
“I did not mean it. No one can be more grateful for the blessings of
Providence than I am. I thank Heaven that all my children are well; but that
does not hinder the poor man at Bruges from losing his. Pray let me
continue: his wife and he are old people, and his only son, as I say, was
dying or dead—dead by this time, certainly, according to what they said of
his condition.”
Miss Susan clasped her hands tightly together. It seemed to her that he
enjoyed the poignant pang his words gave her—“dead by this time,
certainly!” Might that be said of the other who was dearer to her? Two
dying, that this man might get the inheritance! Two lives extinguished, that
Farrel-Austin and his girls might have this honor and glory! He had no
boys, however. His glory could be but short-lived. There was a kind of
fierce satisfaction in that thought.
“I had a long conversation with the old man; indeed, we stayed in
Bruges for some days on purpose. I saw all his papers, and there can be no
doubt he is the grandson of our great-uncle Everard. I explained the whole
matter to him, of course, and brought your advertisements under his notice,
and explained your motives.”
“What are my motives?—according to your explanation.”
“Well, my dear cousin—not exactly love and charity to me, are they? I
explained the position fully to him.”
“Then there is no such thing as justice or right in the world, I suppose,”
she cried indignantly, “but everything hinges on love to you, or the reverse.
You know what reason I have to love you—well do you know it, and lose
no opportunity to keep it before me; but if my boy himself—my dying boy,
God help me!—had been in your place, Farrel-Austin, should I have let him
take possession of what was not his by right? You judge men, and women
too, by yourself. Let that pass, so far as you are concerned. You have no
other ground, I suppose, to form a judgment on; but you have no right to
poison the minds of others. Nothing will make me submit to that.”
“Well, well,” said Mr. Farrel-Austin, shrugging his shoulders with
contemptuous calm, “you can set yourself right when you please with the
Bruges shopkeeper. I will give you his address. But in the meantime you
may as well hear what his decision is. At his age he does not care to change
his country and his position, and come to England in order to become the
master of a tumble-down old house. He prefers his shop, and the place he
has lived in all his life. And the short and the long of it is, that he has
transferred his rights to me, and resigned all claim upon the property. I
agreed to it,” he added, raising his head, “to save trouble, more than for any
other reason. He is an old man, nearly seventy; his son dead or dying, as I
said. So far as I am concerned, it could only have been a few years’ delay at
the most.”
Miss Susan sat bolt upright in her chair, gazing at him with eyes full of
amazement—so much astonished that she scarcely comprehended what he
said. It was evidently a relief to the other to have made his announcement.
He breathed more freely after he had got it all out. He rose from his chair
and went to the window, and nodded to his girls across the lawn. “They are
impatient, I see, and I must be going,” he went on. Then looking at Miss
Susan for the first time, he added, in a tone that had a sound of mockery in
it, “You seem surprised.”
“Surprised!” She had been leaning toward the chair from which he had
arisen without realizing that he had left it in her great consternation. Now
she turned quickly to him. “Surprised! I am a great deal more than
surprised.”
He laughed; he had the upper hand at last. “Why more?” he said lightly.
“I think the man was a very reasonable old man, and saw what his best
policy was.”
“And you—accepted his sacrifice?” said Miss Susan, amazement taking
from her all power of expression;—“you permitted him to give up his
birthright? you—took advantage of his ignorance?”
“My dear cousin, you are rude,” he said, laughing; “without intending it,
I am sure. So well-bred a woman could never make such imputations
willingly. Took advantage! I hope I did not do that. But I certainly
recommended the arrangement to him, as the most reasonable thing he
could do. Think! At his age, he could come here only to die; and with no
son to succeed him, of course I should have stepped in immediately. Few
men like to die among strangers. I was willing, of course, to make him a
recompense for the convenience—for it was no more than a convenience,
make the most you can of it—of succeeding at once.”
Miss Susan looked at him speechless with pain and passion. I do not
know what she did not feel disposed to say. For a moment her blue eyes
shot forth fire, her lips quivered from the flux of too many words which
flooded upon her. She began even, faltering, stammering—then came to a
stop in the mere physical inability to arrange her words, to say all she
wanted, to launch her thunderbolt at his head with the precision she wished.
At last she came to a dead stop, looking at him only, incapable of speech;
and with that pause came reflection. No; she would say nothing; she would
not commit herself; she would think first, and perhaps do, instead of saying.
She gave a gasp of self-restraint.
“The young ladies seem impatient for you,” she said. “Don’t let me
detain you. I don’t know that I have anything to say on the subject of your
news, which is surprising, to be sure, and takes away my breath.”
“Yes, I thought you would be surprised,” he said, and shook hands with
her. Miss Susan’s fingers tingled—how she would have liked, in an outburst
of impatience which I fear was very undignified, to apply them to his ear,
rather than to suffer his hand to touch hers in hypocritical amity! He was a
little disappointed, however, to have had so little response to his
communication. Her silence baffled him. He had expected her to commit
herself, to storm, perhaps; to dash herself in fury against this skilful
obstacle which he had placed in her way. He did not expect her to have so
much command of herself; and, in consequence, he went away with a secret
uneasiness, feeling less successful and less confident in what he had done,
and asking himself, Could he have made some mistake after all—could she
know something that made his enterprise unavailing? He was more than
usually silent on the drive home, making no answer to the comments of his
girls, or to their talk about what they would do when they got possession of
the manor.
“I hope the furniture goes with the house,” said Kate. “Papa, you must
do all you can to secure those old chairs, and especially the settee with the
stamped leather, which is charming, and would fetch its weight in gold in
Wardour street.”
“And, papa, those big blue and white jars,” said Sophy, “real old Nankin,
I am sure. They must have quantities of things hidden away in those old
cupboards. It shall be as good as a museum when we get possession of the
house!”
“You had better get possession of the house before you make any plans
about it,” said her father. “I never like making too sure.”
“Why, papa, what has come over you?” cried the eldest. “You were the
first to say what you would do, when we started. Miss Susan has been
throwing some spell over you.”
“If it is her spell, it will not be hard to break it,” said Sophy; and thus
they glided along, between the green abundant hedges, breathing the honey
breath of the limes, but not quite so happy and triumphant as when they
came. As for the girls, they had heard no details of the bargain their father
had made, and gave no great importance to it; for they knew he was the
next heir, and that the manor-house would soon cease to be poor Herbert’s,
with whom they had played as children, but whom, they said constantly,
they scarcely knew. They did not understand what cloud had come over
their father. “Miss Susan is an old witch,” they said, “and she has put him
under some spell.”
Meanwhile Miss Susan sat half-stupefied where he had left her, in a
draught, which was a thing she took precautions against on ordinary
occasions—the great window open behind her, the door open in front of her,
and the current blowing about even the sedate and heavy folds of the great
crimson curtains, and waking, though she did not feel it, the demon
Neuralgia to twist her nerves, and set her frame on an edge. She did not
seem able to move or even think, so great was the amazement in her mind.
Could he be right—could he have found the Austin she had sought for over
all the world; and was it possible that the unrighteous bargain he had told
her of had really been completed? Unrighteous! for was it not cheating her
in the way she felt the most, deceiving her in her expectations? An actual
misfortune could scarcely have given Miss Susan so great a shock. She sat
quite motionless, her very thoughts arrested in their course, not knowing
what to think, what to do—how to take this curious new event. Must she
accept it as a thing beyond her power of altering, or ought she to ignore it as
something incredible, impossible? One thing or other she must decide upon
at once; but in the meantime, so great was the effect this intimation had
upon her mind, she felt herself past all power of thinking. Everard coming
back found her still seated there in the draught in the old hall. He shut the
door softly behind him and went in, looking at her with questioning eyes.
But she did not notice his look; she was too much and too deeply occupied
in her own mind. Besides, his friendship with her visitors made Everard a
kind of suspected person, not to be fully trusted. Miss Susan was too deeply
absorbed to think this, but she felt it. He sat down opposite, where Mr.
Farrel-Austin had been sitting, and looked at her; but this mute questioning
produced no response.
“What has old Farrel been saying to you, Aunt Susan?” he asked at last.
“Why do you call him old Farrel, Everard? he is not nearly so old as I
am,” said Miss Susan with a sigh, waking up from her thoughts. “Growing
old has its advantages, no doubt, when one can realize the idea of getting
rid of all one’s worries, and having the jangled bells put in tune again; but
otherwise—to think of others who will set everything wrong coming after
us, who have tried hard to keep them right! Perhaps, when it comes to the
very end, one does not mind; I hope so; I feel sore now to think that this
man should be younger than I am, and likely to live ever so much longer,
and enjoy my father’s house.”
Everard sat still, saying nothing. He was unprepared for this sort of
reply. He was slightly shocked too, as young people so often are, by the
expression of any sentiments, except the orthodox ones, on the subject of
dying. It seemed to him, at twenty-five, that to Miss Susan at sixty, it must
be a matter of comparatively little consequence how much longer she lived.
He would have felt the sentiments of the Nunc Dimittis to be much more
appropriate and correct in the circumstances; he could not understand the
peculiar mortification of having less time to live than Farrel-Austin. He
looked grave with the fine disapproval and lofty superiority of youth. But
he was a very gentle-souled and tender-hearted young man, and he did not
like to express the disapproval that was in his face.
“We had better not talk of them,” said Miss Susan, after a pause; “we
don’t agree about them, and it is not likely we should; and I don’t want to
quarrel with you, Everard, on their account. Farrel thinks he is quite sure of
the estate now. He has found out some one whom he calls our missing
cousin, and has got him to give up in his own favor.”
“Got him to give up in his own favor!” repeated Everard amazed. “Why,
this is wonderful news. Who is it, and where is he, and how has it come
about? You take away one’s breath.”
“I cannot go into the story,” said Miss Susan. “Ask himself. I am sick of
the subject. He thinks he has settled it, and that it is all right; and waits for
nothing but my poor boy’s end to take possession. They had not even the
grace to ask for him!” she cried, rising hastily. “Don’t ask me anything
about it; it is more than I can bear.”
“But, Aunt Susan—”
“I tell you we shall quarrel, Everard, if we talk more on this subject,” she
cried. “You are their friend, and I am their—no; it is they who are my
enemies,” she added, stopping herself. “I don’t dictate to you how you are
to feel, or what friends you are to make. I have no right; but I have a right to
talk of what I please, and to be silent when I please. I shall say no more
about it. As for you,” she said, after another pause, with a forced smile, “the
young ladies will consult with you what changes they are to make in the
house. I heard them commenting on the roses, and how everything could be
improved. You will be of the greatest use to them in their new
arrangements, when all obstacles are removed.”
“I don’t think it is kind to speak to me so,” said Everard, in his surprise.
“It is not generous, Aunt Susan. It is like kicking a fellow when he is down;
for you know I can’t defend myself.”
“Yes, I suppose it is unjust,” said Miss Susan, drying her eyes, which
were full of hot tears, with no gratefulness of relief in them. “The worst of
this world is that one is driven to be unjust, and can’t help it, even to those
one loves.”
CHAPTER IV.
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebooknice.com