AWS re:Invent 2022 - Detect vulnerabilities in AWS Lambda functions using Amazon Inspector (SEC217)
AWS re:Invent 2022 - Detect vulnerabilities in AWS Lambda functions using Amazon Inspector (SEC217)
Developers are moving toward serverless compute, like AWS Lambda, for reduced infrastructure management, more efficient scaling, and reduced costs, but serverless workloads must be monitored for vulnerabilities in application code. In this session, learn how you can now use Amazon Inspector to detect vulnerabilities in your AWS Lambda functions in addition to software vulnerabilities and unintended network exposure in Amazon EC2 and container-based workloads. Learn now Amazon Inspector automatically discovers and inventories all existing and newly created Lambda functions for scanning and continually monitors to automatically detect issues. Inspector gives you a single view of your workload vulnerabilities and helps you prioritize remediation through its highly contextualized severity scoring.
ABOUT AWS Amazon Web Services (AWS) hosts events, both online and in-person, bringing the cloud computing community together to connect, collaborate, and learn from AWS experts.
AWS is the world’s most comprehensive and broadly adopted cloud platform, offering over 200 fully featured services from data centers globally. Millions of customers—including the fastest-growing startups, largest enterprises, and leading government agencies—are using AWS to lower costs, become more agile, and innovate faster.
#reInvent2022 #AWSreInvent2022 #AWSEvents
Content
0.96 -> - Hello everyone and welcome.
2.88 -> I'm Rick Anthony and I'm
joined here with Kashish Wadhwa
7.68 -> and we're both from the
Amazon Inspector team
10.74 -> and we're very excited to
talk to you about Inspector
15.537 -> and a new capability we launched
to detect vulnerabilities
20.01 -> in Lambda functions.
23.76 -> So today we're going to
go give you a little bit
27.362 -> of background about Amazon Inspector.
28.59 -> Kashish and I were here last
year at re:Invent almost a year
33.63 -> to the day to introduce the
brand new Amazon Inspector.
38.032 -> So we'll go in that,
what do we mean by that?
41.97 -> We'll talk about what problems
was Amazon Inspector designed
46.02 -> to solve, how it works, how
it achieves those goals.
49.29 -> And then I'll hand it over to
Kashish and he'll give a demo
52.77 -> and talk about how we've extended it
54.78 -> to support serverless
functions through Lambda.
61.44 -> So starting with, what
is Amazon Inspector?
65.28 -> So Amazon Inspector
67.14 -> is a automated vulnerability
management service
70.8 -> that continually scans workloads
72.9 -> for software vulnerabilities
74.19 -> and unintended network exposures.
77.295 -> One of the things I really
wanted to kind of make clear
79.83 -> before we get too far into Inspector
82.68 -> is that there's two
Inspectors that are on AWS.
88.032 -> There is the original Inspector
that we launched in 2016
92.86 -> and then there's the one
that we launched last year.
96.6 -> So the original one in 2016
98.28 -> is called Amazon Inspector Classic.
102.42 -> And then the new one's
just Amazon Inspector.
105.06 -> And we launched that new
version because of a couple
108.33 -> of challenges that we
saw with how customers
111.24 -> were doing vulnerability and management
114.134 -> either through traditional
methods or through classic.
118.14 -> And one of the big changes that we made
122.433 -> was to really build it for the cloud
125.1 -> and make it a continual scanning system.
128.16 -> And what do we mean by that?
129.93 -> So we wanted to make Amazon
Inspector easy to use
134.448 -> and low administration,
136.504 -> easy enablement and
continual and monitoring
140.4 -> where Amazon Inspector
decides what to scan,
143.991 -> when to scan, so that
instead of having a system
147.271 -> where you schedule things
and have to worry about
150.668 -> am I seeing everything in my environment?
153.39 -> Inspector takes the burden for you.
157.395 -> Okay, so couple of the main challenges
160.71 -> that we were looking to solve.
162.93 -> Number one, we wanted to
build Inspector for the cloud.
167.67 -> So the cloud is, it's elastic,
it's flexible, it's fast.
174.15 -> One of the, when we talk to customers,
175.86 -> one of the challenges they talk about is
178.17 -> it's hard for me to know
what are all the accounts
180.54 -> that just exist within my organization,
183.36 -> what are all of the resources,
185.174 -> how do I know that I'm scanning everything
189.03 -> when resources can come
up and go down so quickly?
193.32 -> That's one of the things
we wanted to solve
195.48 -> with the new Amazon Inspector.
197.708 -> Number two, we wanted to tell customers
201.283 -> how to manage vulnerabilities
in near real time.
205.53 -> One of the challenges we
saw is that customers,
207.634 -> because they were using
vulnerability management
211.32 -> in a very traditional sense
of scanning once a week
214.44 -> or once a month or once a quarter,
216.36 -> they had to be really hyper aware
218.19 -> of what vulnerabilities were out there
220.552 -> because they had to know, hey,
222.54 -> if there's a brand new
critical vulnerability,
224.67 -> is this important enough
for me to now scan outside
227.139 -> of my normal window?
229.8 -> We wanted to kind of take
that responsibility away
232.658 -> and hand it to Inspector so
Inspector could do the work.
235.901 -> Number three, we saw that customers
239.18 -> as they went on their
journey from scanning,
242.205 -> using EC2 workloads to container workloads
246.492 -> to Lambda workloads or serverless,
248.94 -> they were using different tools
250.8 -> where they were buying
different modules and we wanted
253.89 -> to give customers a way
255.364 -> where they could do
everything with one tool.
258.42 -> So that's why we support both EC2,
262.175 -> we support containers,
264.06 -> we support Lambda functions
through Inspector.
267.36 -> And finally we saw
customers struggling with,
270.48 -> once they had all the
data, what do I do with it?
273.81 -> How do I action this data?
276.45 -> So we built Amazon Inspector
in order to make it easy
280.89 -> to number one, know what's
the state of environment,
284.73 -> number two, know what my
findings are and number three,
288.45 -> easy methods to take those findings,
291.03 -> send them into other
tools and action them.
296.19 -> So how do we do this?
297.69 -> How does Amazon Inspector
address those challenges?
301.597 -> We're really gonna talk about
three areas or three pillars
306.09 -> of Amazon Inspector functionality.
308.67 -> Number one
309.63 -> is what we call frictionless
activation management.
313.053 -> Number two,
314.79 -> we're gonna talk about continual
vulnerability monitoring.
318.36 -> And number three we're gonna talk about
320.55 -> how to prioritize and
contextualize the results.
327.15 -> Okay, frictionless activation.
330.63 -> So the new Amazon Inspector
333.03 -> is integrated with organizations.
335.7 -> So one of the problems we
talked about is how do I know
337.945 -> what all of my accounts are?
340.35 -> If you're using AWS organizations,
342.218 -> you can very simply plug
that into Amazon Inspector
345.9 -> and now Inspector knows
all of your accounts
349.55 -> and with a single click,
351.63 -> you can now activate Inspector everywhere.
355.59 -> And so, one of the things things
that this allows you to do
358.674 -> is to ensure I've got
coverage on everything
361.59 -> and Inspector has a
capability where you can say,
365.797 -> "Okay Inspector,
366.93 -> as you see new accounts
automatically enable yourself."
370.003 -> So now you're eliminating
gaps in your coverage
373.426 -> and now you have security by
default because everything
377.58 -> is now configured through organizations.
382.05 -> The second benefit of this
383.94 -> is that if you're using organizations,
386.138 -> you have a single pane of glass
where you can see everything
390.75 -> for your organization.
391.8 -> So the way Inspector works is you assign
394.77 -> a delegated administrator,
396.57 -> use that administrator
to enable Inspector,
398.942 -> configure your organization-wide settings
402.48 -> and all of the findings and all the data
404.802 -> that Inspector collects now
shows up in a single pane
408.27 -> of glass as you view it as
a delegated administrator.
412.23 -> And if you want even more flexibility,
414.06 -> we allow you to send that
data out to Security Hub
417.42 -> because Security Hub
has very nice features
419.49 -> for bringing all your
data into a single region.
424.23 -> So as an example, the power of this,
426.81 -> we recently had a customer
onboard and enable Inspector
430.86 -> for 7,000 accounts and they did this
434.34 -> with just a handful of steps.
436.325 -> Number one, they had their
organization set up already,
439.174 -> they came to the Inspector console,
441.821 -> they assigned a delegated
admin enabled Inspector
447.03 -> and through that delegated admin account
449.22 -> they just said okay, number one,
451.62 -> I want all new accounts
enabled and number two,
454.44 -> I want to enable all existing accounts.
457.29 -> And that was it, they were done.
459.3 -> As Inspector turned on it
looked at all their resources,
463.25 -> it started doing assessments
and from that single view now
466.478 -> they can see all of their results,
468.96 -> all their findings for 7,000 accounts.
474.87 -> Number two, continual
vulnerability monitoring.
478.44 -> So one of the challenges
customers tell us about
482.37 -> is how do I know what I have?
484.23 -> All of my teams are constantly
creating new resources,
487.464 -> how do I know that I'm seeing everything?
491.37 -> The cloud is fast, resources
come up, resources go down.
495.69 -> Amazon Inspector keeps track
of all these resources for you.
500.094 -> When you activate Inspector,
501.877 -> it inventories everything in your account.
505.185 -> So it inventories all your EC2 instances,
508.29 -> or it inventories all
your container images.
512.16 -> And as you will see later with our demo,
514.32 -> it will also inventory all
of your Lambda functions
517.559 -> and it will hook into AWS to
monitor all your activity.
524.1 -> So if you launch a new EC2
instance, Inspector is aware,
528.03 -> if you push a new container
image, Inspector is aware.
531.07 -> In the demo you'll see us
532.93 -> create a brand new lambda function.
535.997 -> Inspector will become aware of that
538.153 -> and it will scan it automatically.
541.05 -> So as an administrator, I have
no work that I have to do,
544.62 -> Inspector just finds it and
Inspector will then also monitor
550.08 -> what's installed in those resources
552.692 -> and reassess them as needed.
555.414 -> So vulnerabilities are
being published every day
559.707 -> and like we talked about,
561.852 -> you don't want to have to be an expert
564.06 -> of how critical is this
brand new vulnerability?
566.94 -> Do I need to go outside
of my patching cycle?
568.968 -> Amazon Inspector monitors
all the vulnerabilities
573.6 -> and as new ones are published,
575.119 -> it will look at your resources,
577.23 -> it will pick the ones that are impacted
578.874 -> and automatically reassess those
581.907 -> and generate findings for you.
585.45 -> Also, if you patch your resources,
588.13 -> Amazon Inspector is aware, it
will go in, it will reassess,
593.1 -> it will see that you've
remediated your issue
595.98 -> and it will close the findings for you.
597.78 -> So constantly when you
go and look at Inspector,
600.379 -> you're seeing the state of your resources
603.69 -> as they are at that moment.
608.294 -> So one of the examples of this,
611.701 -> a few weeks ago there was
a open SSL vulnerability
616.83 -> that was rated, I think some
vendors rated as critical,
620.97 -> some rated it as a high
vulnerability and for customers
626.94 -> that were using Amazon Inspector,
628.73 -> they didn't have to worry about it.
631.44 -> So as vendors like Red
Hat, Ubuntu and others
635.246 -> did their analysis and published
637.68 -> their findings for that vulnerability,
640.74 -> Inspector automatically
pulled that information,
643.68 -> found the resources impacted
and just reassessed them.
647.73 -> So customers who were worried
about that really had nothing
651.12 -> they had to do, they just
came into work that morning,
653.256 -> they logged in and they saw, oh look,
655.868 -> Inspector's aware of this vulnerability,
658.14 -> it's already done the work for me,
660 -> here's my status and this is where I'm at.
666.57 -> And then the third pillar
of Amazon Inspector,
669.54 -> prioritizing and contextualizing results.
672.445 -> So we know that vulnerability
systems can generate
677.73 -> a lot of findings 'cause
customers have a lot of resources
681.462 -> and sometimes it can get very overwhelming
684.6 -> to know what should I work on first?
687.33 -> What's really important
for me in my environment?
691.648 -> Inspector tries to help you
with that decision making
696.565 -> by providing something we call
the Amazon Inspector score.
701.4 -> So the Amazon Inspector
score takes into account
704.864 -> the severity of the vulnerability,
709.74 -> takes into account the
network accessibility
714.27 -> of your resource.
715.77 -> It takes into account
exploitability and other factors
719.073 -> and then will tell you how important
722.217 -> that vulnerability is to
you and your environment
726.148 -> so that you can prioritize
better and pick the things
729.21 -> that are really important
to addressed first.
733.23 -> In addition to this,
734.211 -> Amazon Inspector keeps track
736.984 -> of all of your findings holistically.
738.845 -> So if you do patch or
you do delete a resource,
743.441 -> Amazon Inspector is
automatically closing those
746.85 -> so that you have a
current state of the art
749.216 -> and if you want to take that data
751.991 -> and send it into another system,
754.797 -> those findings automatically
flow into Security hub
759.06 -> for easy viewing.
760.35 -> We also send them out to EventBridge
763.92 -> so customers can take action on them,
766.452 -> either feed them into ticketing systems
768.81 -> or write their own remediation scripts
771.3 -> through things like SSM Patch Manager.
776.7 -> Okay, so little bit of
background on Inspector.
780.75 -> So how does those things
work for serverless?
785.1 -> I'm gonna turn it over
to Kashish to continue.
788.85 -> - Thanks Rick.
790.08 -> Before we move on to security
for serverless functions,
793.347 -> one key point that Rick
brought up was around
796.98 -> using EventBridge to automate remediation.
799.98 -> So we did recently publish a blog
801.888 -> with cloud formation
templates where we showed
805.77 -> how you could take or enable
Inspector, activate it
810.227 -> and if you have that solution in place,
813 -> that would automatically
remediate all your findings
815.76 -> in real time using SSM Patch Manager.
818.52 -> So that was pretty impactful
820.2 -> because customers not only could identify
822.66 -> these vulnerabilities in real time,
824.61 -> they were automatically getting
patched or EC2 instances
827.52 -> were getting patched in real time also.
829.95 -> Another blog that we recently published
832.2 -> was around container images
where while it is important
837.12 -> to scan for vulnerabilities,
838.47 -> more important thing is
to prevent the deployment
841.83 -> of those images or those
vulnerable images in production
844.8 -> so that it's not exploited.
848.16 -> If you look at some of the
studies done by prominent vendors
852.12 -> in the space between 2020 and 2021,
855.66 -> the time took to exploit a vulnerability
858.12 -> has gone down by 70%.
860.37 -> So there are bots
861.39 -> that as soon as your
EC2 instance comes up,
864.12 -> they will try to poke
it, they will try to see
866.76 -> how we can exploit it.
868.11 -> And if there is a critical
vulnerability like open SSL
872.52 -> or any critical vulnerabilities
874.59 -> that have been published in the last year,
876.63 -> it's really easy to for them to exploit it
879.24 -> even before you know it.
882.865 -> So moving on security for serverless
885.54 -> and as we were talking
about it is really important
888.44 -> for customers to kind
of get a whole picture
892.47 -> of their overall landscape
in compute world.
894.749 -> We saw 10 years ago we
started with EC2 instances,
899.4 -> which is virtual machines.
900.6 -> Then we moved on to containers
901.98 -> in the last five to six years.
904.2 -> Now the industry trend is
to move towards serverless.
907.26 -> I have spoken to a lot of customers
908.94 -> that only use serverless now
910.29 -> they don't even use containers
911.52 -> just because it's easy to use.
913.65 -> They don't need to have
administration teams just
916.29 -> to manage the infrastructure.
918.33 -> So with that move we
thought since customers
922.099 -> are using this vulnerability management
924.36 -> Inspector vulnerability management
925.8 -> for EC2 instances and container images,
927.99 -> it is equally important
for serverless functions
930.812 -> and soon compliance requirements
will also cover those
934.089 -> in addition to containers and
traditional vulnerability,
938.19 -> traditional virtual machines.
941.73 -> So talking about the
shared responsibility model
944.43 -> for serverless functions,
945.859 -> even though it is completely managed,
947.986 -> AWS manages the
infrastructure, the hardware,
951.637 -> even the compute,
953.002 -> but the applications that you deploy
955.65 -> on that serverless infrastructure
959.054 -> is still responsibility of the customer.
962.31 -> So think about the code that
you write is still susceptible
968.52 -> to exploitation or the dependencies
971.7 -> that you use are still like
valid for exploitation.
974.776 -> One of the major things that we have seen
977.7 -> with lambda functions
978.63 -> is that there's a exploit
called well poisoning.
983.7 -> Where if you have a certain,
986.257 -> if you have a certain
package which is vulnerable
989.85 -> and you maintain some sort of repository
991.92 -> and regardless if your function
995.07 -> is accessible through API gateway,
996.99 -> external network or not,
998.7 -> if you're using that specific package,
1001.4 -> it could still be exploited.
1003.53 -> Then there are resource
configuration and IM issues
1005.93 -> with functions which
can still be exploited.
1009.44 -> So there are a lot of things
that makes it really critical
1012.68 -> for us to tackle the problem
around serverless functions
1018.2 -> or lambda functions also.
1019.85 -> And we wanted to give
a single pane of glass
1022.16 -> because if you think about it the same,
1023.7 -> let's say hypothetically
there is a vulnerable package,
1026.733 -> Python 2.7.
1029.21 -> Now you could use the same
package in your EC2 instance
1031.7 -> in your container image and
in your serverless functions,
1034.76 -> which is lambda functions.
1036.17 -> So you don't need three or four solutions
1038.78 -> or different modules
or different solutions
1040.52 -> to kind of tell you the same
thing with different details.
1043.957 -> Any solution should be able
to give you that single source
1047.63 -> of truth and the goal is
that you are able to go
1051.095 -> and remediate or update
that package or issue
1054.53 -> that guidance to your organization
1056.612 -> that we don't need to use this package.
1060.218 -> So for example,
1062.24 -> internally we had a
similar issue in the past
1065.39 -> where there was an
organizational level decision
1068.54 -> that you can't use a
specific package anymore
1071.48 -> just because it is vulnerable.
1072.98 -> So we had to identify even in our systems
1075.35 -> where all are we using that package.
1078.35 -> So it's really critical
to have that inventory
1081.631 -> where all these packages are
in in my entire environment
1087.26 -> and then it's about how do I
go and rebuild it, patch it.
1090.17 -> So this is one of the
reasons we try to bring
1093.466 -> this up forward before any other features.
1100.85 -> So what's new essentially
how would the scanning
1106.7 -> for serverless functions work?
1108.32 -> I will show this in the
demo, but how Rick explained,
1112.46 -> we have tried to make a very
consistent operating model
1117.02 -> for serverless functions also.
1119.18 -> So for existing customers
1120.89 -> who are already using Amazon Inspector,
1122.75 -> they have to go to their
account management page
1125.12 -> and just with one click and
enable all their accounts
1127.917 -> for lambda standard scanning.
1130.88 -> With that, as soon as they click that,
1133.31 -> what will happen is we will go
and discover lambda functions
1136.28 -> that exist in their accounts
across or all the accounts
1140.632 -> within their organization
1142.078 -> and we'll automatically
start discovering them.
1145.55 -> As soon as they're discovered,
1147.02 -> we will automatically scan
them for software abilities.
1150.11 -> So what I mean by that is we will go
1153.14 -> and extract the lambda function,
1154.37 -> we will look at all the dependencies
1156.697 -> that are being included in that.
1159.26 -> We take an inventory of that
and we will generate findings.
1162.738 -> And as let's say if you update a function,
1167.905 -> because I've talked to a few customers
1170.15 -> who have regular updates scheduled,
1174.303 -> if there's, let's say a dependency,
1177.079 -> they continuously update
those functions every day
1178.85 -> or sometimes every 12 hours
so that they make sure
1181.55 -> they're using the latest
dependency version.
1183.439 -> So in traditional vulnerability management
1187.062 -> what you would have to do is
either you scan every day,
1190.94 -> every week or every month,
whatever that is it,
1193.622 -> it still leaves the room
to possible exploitation
1199.94 -> because you still have
that vulnerable package
1202.679 -> or overall software
1204.86 -> being used in your
production environments.
1207.02 -> With Inspectors, since
we auto discover not only
1209.783 -> when it is deployed, when
you update a function
1212.84 -> and all this is in near real time,
1214.79 -> I would say 30 to 45
minutes or most of the times
1218.3 -> it'll be within seconds or minutes,
1220.04 -> but at max it could take 30 to 45 minutes.
1222.415 -> So as soon as you update a function,
1226.1 -> we will automatically discover
and we will trigger a scan
1228.8 -> which will go and generate new findings
1231.14 -> if there is any delta in the packages
1234.44 -> that are used or the version
of the packages that are used
1236.806 -> and on the other side.
1240.26 -> So this is what we kind of
monitor your environment.
1243.385 -> Then we also monitor CVE landscape.
1247.13 -> As Rick alluded to earlier,
1248.48 -> we built a purposeful
vulnerability intelligence database
1251.84 -> for the new Inspector and
we consume over 50 sources
1255.284 -> in our database and that includes some
1260.42 -> of the prominent sources
like sneak intelligence
1264.17 -> that we got procured licenses for.
1265.783 -> We also recently procured
additional licenses
1268.518 -> from some other vendors
for threat intelligence.
1272.101 -> And one of the things
that we have added now,
1275 -> we not only give you,
these are the findings,
1278.06 -> we also give you additional
vulnerability intelligence.
1280.52 -> So think about when was
this last CVE exploited?
1284.81 -> So CVEs, have a CVEs score as
you, I'm sure you all know,
1291.05 -> let's say there is a CVE
with CVE score of 10.0
1294.161 -> but it hasn't been exploited
in the last five years, right?
1299.12 -> And there is a CVE with a
CVEs score of let's say 9.1
1303.676 -> even though the score is lower,
1305.84 -> but we know that it has
been exploited yesterday
1308.771 -> or this morning in the wild,
1310.58 -> not in your environment but in the wild,
1312.77 -> that automatically becomes more important
1315.47 -> and if there is a fix available,
1317.372 -> if you correlate both that data,
1319.64 -> it's slowly easy for you to
identify these are the resources
1322.67 -> or these are the findings
I need to address first
1325.19 -> and then I can tackle the later ones.
1327.2 -> Because one of the things
we consistently heard
1329.42 -> from security teams including
internal security team,
1332.96 -> that it's really hard to even go
1334.79 -> and remediate the criticals and the highs,
1337 -> let alone the mediums and the
lows or the informationals.
1340.73 -> It's just the sheer volume of findings
1342.77 -> that are generated not
in just in Inspector,
1346.91 -> just it's the nature of the space
1348.92 -> and it's just slowly hard to remade that.
1352.16 -> So like Rick was telling you
about the prioritization,
1357.98 -> we do that for you.
1359.75 -> Our main goal with Inspector
is that security teams
1363.29 -> should not be focused
on managing a solution,
1366.47 -> deploying an agent are just
the operational overhead
1370.728 -> that is associated with
vulnerability management.
1373.85 -> They should be focused on remediation,
1375.71 -> implementing compensating controls
1377.96 -> or just focused on improving security.
1382.07 -> Maintaining a solution should be
1384.32 -> like solution should be
good enough to do that.
1386.18 -> So that was our main tenant
1388.37 -> when we decide to rebuild Inspector.
1391.01 -> And going back to
prioritization within Inspector,
1393.708 -> we do do that.
1395.57 -> So if you and I will show
that in the demo also,
1399.02 -> we have a panel on the
main dashboard called
1401.36 -> risk based remediations where
we look at your holistically,
1404.57 -> your whole environment and
we identify five packages,
1407.99 -> top five packages, what we
call five packages on fire.
1411.23 -> And based on number of
CVEs attached to it,
1414.62 -> the criticality of the CVEs
and number of resources
1417.86 -> that are impacted by those packages
1420.172 -> that have those packages.
1422.81 -> We kind of identified those
five things and our opinion
1426.08 -> is that if you go and try to
patch or remediate those first,
1430.46 -> that will reduce your risk
posture significantly.
1433.85 -> Obviously you have to
implement others also
1436.64 -> or remediate others also, but
this is a good starting point.
1443.54 -> Then the last thing about integration
1445.64 -> with EventBridge and also security hub.
1448.998 -> So some of the customers
have already automated
1455.39 -> their ticketing system.
1457.071 -> So since inspected us
everything in real time,
1459.764 -> every time there's a
new finding generated,
1462.59 -> we would send an event to EventBridge.
1465.17 -> Every time a new resources discovered,
1467.6 -> all the state changes.
1468.68 -> So let's say if it is terminated
or an instance is stopped
1471.8 -> or a Lambda function is deleted
1474.2 -> or a container image is deleted,
1475.82 -> we send all sorts of events
and obviously in EventBridge,
1479.27 -> you can create different rules
1480.68 -> on how you want to kind
of manage those events.
1483.92 -> You can be, you can get
as granular as you want
1486.98 -> or it could be as broad as you want.
1489.007 -> So what customers have done at,
1490.91 -> they have used this mechanism
1492.98 -> to automate their ticketing systems.
1495.11 -> So for example,
1496.7 -> as soon as an easy to instance
comes up, is launched,
1499.55 -> Inspector will detect it,
scan it, generate findings,
1504.121 -> and as soon as we generate findings
1506.69 -> there will be an EventBridge
notification or an event
1510.254 -> saying this is a new finding generated,
1512.6 -> these are the details and we
also have the resource details.
1516.86 -> So things like tax attached
to the resource instance ID
1522.8 -> or Lambda function ID
and so forth and so on.
1525.05 -> So based on that, customers
can automatically route
1527.99 -> or create tickets and route
it to the appropriate team
1531.076 -> so that they don't have to worry
1532.61 -> about manually creating teams.
1535.071 -> In the past I've seen
customers hiring people
1538.896 -> just to create tickets.
1540.68 -> Their whole job is to see
what the scan results are
1543.311 -> and then go and create tickets.
1545.588 -> So we are trying to reduce
all that operational overhead
1548.36 -> and the same mechanism could be used
1549.98 -> for automated patching also,
1551.81 -> which I was referring to the blog
1553.58 -> and there's a slide towards
the end that has links to it.
1557.36 -> But if you go to Amazon Inspector's
website under Resources,
1561.38 -> we have all those blogs also listed.
1565.653 -> So the whole goal is, so with this launch,
1570.92 -> as I've said before,
1572.04 -> you will get a single pane of
glass across all compute types
1575.54 -> and it's just easier for you to identify
1578.012 -> where all your packages are
1579.74 -> and kind of have that supply chain traces
1583.46 -> in your environment.
1587.349 -> One thing I do want to note is that
1589.962 -> a lot of the customers
typically have lambda functions
1595.553 -> kind of deployed
1596.87 -> but they are not getting
involved in a while.
1599.12 -> So we also meet the
solution intelligent enough
1602.3 -> to filter out those functions
1604.52 -> that haven't been invoked in a while.
1606.583 -> The reason behind that is to control costs
1610.01 -> or spend for the customers
1612.02 -> and if let's say you
haven't invoked something
1615.23 -> for six months, we won't
pick it up on enablement,
1617.41 -> but let's say tomorrow you do invoke it.
1619.938 -> So we have made that intelligent enough
1622.94 -> that as soon as it is invoked,
1624.737 -> it does come under Inspector coverage
1627.59 -> and we start scanning that
1628.82 -> and then it'll be monitored throughout
1630.53 -> until it is getting,
1632 -> there's a period when we
will continue to monitor it.
1638.72 -> So I'm gonna transfer or
switch to the demo now
1642.2 -> and then we can take questions
after that in Q and A.
1658.28 -> So what I'm gonna do is I'm gonna log in
1660.89 -> through my org management account first
1665.27 -> just to show you how you can assign
1667.13 -> a delegated administrator
account and how easy it is.
1724.58 -> So just to show you how
the organization is set up,
1727.85 -> if you can see this is
the org management account
1730.4 -> that we use to log in
and this is an account
1733.52 -> I will assign as the delegated admin
1735.17 -> and this is another
member account in the org.
1737.9 -> And when I go back here, all I have to do
1742.667 -> is when we get started here,
1747.71 -> you have to assign a
delegated admin account
1750.11 -> and you just have to
provide the account id.
1752.27 -> And what will happen is
once you click on Delegate,
1756.5 -> it will not only delegate
the admin account,
1759.56 -> which can act as a central
Inspector admin account,
1762.17 -> which has visibility into
all your other accounts,
1765.412 -> but also all the findings
1767.814 -> are consolidated into that one account.
1772.25 -> Now while it's getting delegated,
1774.47 -> I'm gonna log in through
the delegated admin account
1777.44 -> to show you how it would look like.
1794.15 -> So when you log in,
1795.56 -> this is the delegated admin account
1797 -> and this is how you see
Inspector would look like.
1800.3 -> So we give you the whole
environmental coverage details.
1803.69 -> So, and I'll click on
one of each one of these
1806.48 -> and show you how it would look like
1807.83 -> and what the benefit is
and what the use cases are.
1810.8 -> But essentially when you log in,
1812.66 -> this is the first page you will see,
1814.07 -> you will see your real time
environmental coverage,
1817.37 -> which means how many
accounts are being used
1821.03 -> or activated with Inspector.
1822.47 -> So you can see three out of
three accounts are enabled,
1825.17 -> instances we are giving you 85% instances
1828.347 -> are being covered by Inspector,
that is 12 out of 14.
1832.16 -> And when I click on that,
1833.453 -> I'll show you in the coverage pages,
1835.927 -> we give you actionable guidance.
1837.41 -> The two instances that are
not being scanned by Inspector
1840.35 -> or monitored by Inspector, why not?
1841.933 -> Similarly for container images
1844.16 -> or container repositories
and lambda functions.
1846.44 -> We give you coverage details.
1848.42 -> And similarly for critical findings,
1851.135 -> we have this page like
real time dashboard for you
1856.55 -> so that you can see our
organizational vulnerability posture
1859.775 -> at any given time.
1861.86 -> So our whole goal is not to make it more
1864.89 -> like a traditional vulnerability
management solution,
1867.23 -> it's more to build it more
1869.18 -> like a security operation center
1871.82 -> so that you don't have to worry
1873.825 -> about the operational overhead,
1874.88 -> you just have to monitor
the real time data
1877.37 -> that you get from Inspector.
1880.19 -> So if you click on it or you can just go
1882.41 -> to account management page also,
1884.36 -> you can see there are EC2
scanning, ECR scanning
1888.92 -> or lambda scanning and all you have to do
1891.496 -> is click here and enable all.
1894.2 -> And if you don't want
all types of scannings,
1896.21 -> we do give flexibility if you just want
1898.88 -> let's say EC2 scanning or lambda scanning,
1901.01 -> you can just turn on that.
1904.19 -> And we also provide additional feature
1906.62 -> for new member accounts.
1908.09 -> So let's say today you
have only 10 accounts
1910.67 -> in your AWS organization
but you plan to add one more
1914.72 -> so you don't have to come back
1916.73 -> and re-enable Inspector
for that new account.
1919.647 -> If you have this setting turned on,
1921.969 -> the new accounts will
automatically be onboarded
1925.85 -> to Inspector without any manual effort.
1930.74 -> So going back to instances
and you can go back
1934.263 -> or go through account management also,
1936.68 -> you can see the coverage
pages through there also.
1939.11 -> But essentially, we tell
you how many EC2 instances
1942.74 -> are we scanning and the
ones we are not, why not?
1945.26 -> So you can see this is
being actively monitored,
1947.445 -> this one is unmanaged.
1949.55 -> So we do require SSM agent
only for EC2 instances.
1954.29 -> So if you're already using SSM
agents in your environment,
1957.71 -> you don't need to do anything else.
1959.612 -> But if you don't,
1960.74 -> you do need to have SSM
agent for EC2 instances only.
1964.07 -> For container images, Lambda functions,
1966.41 -> you don't need any additional
agent or a software.
1969.56 -> We automatically get
that from the service.
1973.28 -> - And just to jump in,
1974.45 -> this is one of the differences
between the new Inspector
1977.99 -> and Inspector classic.
1979.31 -> So for those who used the older Inspector,
1982.73 -> we had a dedicated agent
that you had to deploy
1986.33 -> and kind of manually manage on your own
1990.17 -> and customers just constantly told us
1992.42 -> like we just don't want another agent,
1994.58 -> we're already using SSM,
1996.56 -> our security teams have blessed it
1998.18 -> like please, please make that work for us.
2001.27 -> And so that's why you see that change
2004.632 -> between classic and the new Inspector.
2008.32 -> - And similarly, you can
see for container images
2010.144 -> and you will see unsupported OS
2012.49 -> or scan eligibility expired
and we can go through
2014.863 -> that if you have questions
around it in Q and A.
2017.92 -> But essentially we give
multiple configurations
2020.8 -> for contained images
on how long you want it
2023.47 -> to be monitored for.
2024.7 -> It could be 30 days, 180 days or lifetime.
2027.61 -> So depending on each customer
2029.23 -> you have that configuration available.
2032.596 -> - And those settings, those
configuration settings,
2035.74 -> those are set by your
delegated administrator
2038.11 -> so you don't have to go in
2039.4 -> and set them in every single account.
2041.77 -> The delegated administrator
is that single point
2044.35 -> where you can decide,
2046.33 -> how do I want this configured
for my organization?
2050.26 -> - And similarly for lambda functions
2051.58 -> you can see what are the resource tags,
2053.667 -> it is actively monitored and
so forth and so on, run times.
2060.16 -> So before I deploy Lambda function,
2062.98 -> I do want to show you one of
the unique things that we do
2065.498 -> with network reachability scans first.
2068.977 -> So vulnerability scans or CVE scans
2074.77 -> that we do for EC2 instances,
we also do network scans.
2078.94 -> And the network scans that
we do are kind of unique
2083.11 -> in the sense since we
are an internal service
2085.33 -> we get data from security
groups or other services.
2089.89 -> So what we can do is we
can identify open paths
2092.245 -> to your ports from the
internet or any VPC,
2097.389 -> I would say VPC edges.
2100.304 -> So think about internet
gateways, load balancers
2103.57 -> or transit gateways.
2105.7 -> We identify paths from the
internet to your instances.
2109.36 -> So if I
2114.37 -> just filter on network reachability scan
2117.19 -> or network reachability findings,
2120.07 -> you can see this port 2022 is reachable
2124.24 -> from the internet gateway and
we do give you the exact path
2127.51 -> and if there are multiple paths,
2128.68 -> we will generate multiple findings.
2130.32 -> So you can say this internet
gateway, this network ACL,
2134.17 -> this security group, this
ENI and this instance,
2137.95 -> this is how the path is
and if it is unintentional,
2141.73 -> you might want go and remediate that
2143.29 -> versus letting it be open.
2144.824 -> And what we do is for
our contextualization
2151.034 -> as we alluded to earlier,
2152.806 -> we take that data and we
correlated with the CVE data.
2158.71 -> Now if I show you an example
of how Inspector's score
2162.43 -> is generated and how it is impactful,
2174.49 -> let's take an example of this one.
2175.81 -> So on this instance we
identified this CVE 2017
2178.401 -> for CURL and libcurl.
2181.09 -> We do give you kind of
a high level description
2183.91 -> of what the vulnerability is about.
2186.119 -> Then we give you the
severity which is determined
2189.64 -> by the Inspector score, what
kind of vulnerability it is,
2194.004 -> if there is an exploit available.
2197.079 -> So exploit available here is the feature
2202.03 -> we are launching as a part of this launch,
2205.12 -> which I called out earlier
where we do give you
2207.52 -> the information that if
there is an exploit available
2210.67 -> and we monitor Darknet for it,
2212.11 -> we have our internal thread intel groups
2214.3 -> that monitor known
hacker groups for these.
2217.777 -> So we monitor the whole landscape to see
2219.04 -> which CVEs are actually
being exploited in the wild.
2223.21 -> So for fixed available you can see these
2225.82 -> are the affected packages by the CVE.
2227.86 -> So curl and this version, this release,
2231.97 -> this architecture and we also
give you fixed inversion.
2235.482 -> So not only which version
is affected by this CVE,
2238.54 -> but how it is or where it is fixed in.
2240.94 -> If it is not fixed yet,
2242.356 -> which means like vendor
hasn't really released
2244.99 -> a fixed version to address
the CVE, then you will see,
2250.06 -> fixed available as nil or partial.
2252.4 -> So partial is when, let's
say there are two packages,
2256.3 -> there is fixed available for
one but not the other one.
2258.76 -> So it'll be partial
2259.63 -> and if none of the packages
have fixed available
2261.79 -> it will be nil.
2264.16 -> And we give you scores,
all type of scores.
2267.13 -> So you can see CVE's 2.0 score from NVD,
2270.089 -> CVE's 3.0 score from NVD.
2273.28 -> But if you look at it closely,
CVE's score from NVD is 9.8,
2278.56 -> but here Inspector score is 8.4.
2281.43 -> We have reduced the score based on
2284.531 -> and we are being very
completely transparent about it.
2287.92 -> If you look at it,
2288.97 -> what we did was we looked
at the CVE metadata
2291.88 -> and if you look at attack vector,
2293.47 -> what it means is that this CVE
2295.66 -> can only be exploited remotely
2297.291 -> and we determine that
your instance is local,
2300.79 -> which means it doesn't have
any path from the internet
2303.78 -> and we adjust the parameters
to generate an Inspector score
2307.89 -> that will eventually determine
the severity of that finding.
2313.51 -> Now we didn't invent our own calculator,
2316.36 -> we are using industry standard calculator
2318.82 -> to calculate the Inspector score,
2320.74 -> but we adjust the parameters
in that CVE vector.
2325.18 -> - And one thing that's
important to point out
2328.491 -> that network reachability,
2329.324 -> we're not doing that
through network probing.
2331.39 -> So we're not sending data
into your environment.
2334.63 -> What we're doing is we're
looking at your configuration
2337.07 -> and Amazon has provable security tools
2342.371 -> that basically guarantee us that yes,
2345.7 -> there is a path no matter
from the edge of the VPCN.
2348.859 -> So just to be clear,
2350.65 -> this is without agent, without probing.
2353.05 -> This is where that's coming from.
2356.92 -> - Yeah, so now what I'm gonna do
2359.258 -> is I will deploy Lambda function.
2363.85 -> I did prepare some Lambda
functions beforehand.
2370.57 -> So I'll just deploy this lambda function
2372.85 -> and I will show you what the
function does in a minute
2375.7 -> once the deployment is done.
2388.12 -> And one thing we kind of
didn't really talk about
2390.55 -> until now is layers also as
you know you can use layers
2396.07 -> as a part of your lambda function.
2397.78 -> So we do scan layers also.
2399.223 -> So if any function that we are scanning
2401.68 -> and it has like five or 10 layers,
2403.9 -> not only will we show those layers
2408.16 -> or identify findings in those layers,
2409.9 -> we will also attribute that
finding to that specific layer
2413.59 -> so that you know if you
go and fix that layer,
2417.85 -> it could impact multiple
functions at once.
2420.73 -> So we do have that capability also,
2426.58 -> it takes about a couple
of minutes to deploy.
2432.04 -> While it is getting deployed,
2433.441 -> this is what's something
I wanted to call out
2435.67 -> the risk-based remediations.
2437.32 -> So based on my demo environment,
2440.157 -> these are the packages which
have the most critical like
2444.01 -> CVEs attached to it
impacting most resources.
2447.85 -> So you can see these are
the packages I need to go
2450.25 -> and update and that is how
you can remediate those.
2455.74 -> And for EC2, I do want to
call out another thing,
2458.978 -> we map it back to AMIs.
2462.34 -> So if you look here in this panel,
2464.68 -> this AMI is being used by four instances
2467.337 -> and since we are not
scanning the AMIs directly,
2470.069 -> there is a baseline that you
can see that for example,
2474.428 -> 130 high or 228 total
vulnerabilities are like a baseline
2480.775 -> and there could be additional software
2482.8 -> in other instances or you
might have patched in other,
2487.15 -> but it gives you a good idea
of what you need to patch
2490.24 -> or regenerate your AMI to see results.
2496.9 -> Let's see, yeah, so this is deployed
2499.15 -> and within seconds you will
see, it has been discovered
2503.95 -> and within a couple of
seconds it it'll turn to,
2518.02 -> yeah, so this is the
function I just deployed
2520.75 -> and you can see findings
generated a minute ago
2523 -> or few seconds ago.
2524.71 -> So within like a minute or
so, as soon as it is deployed,
2527.98 -> you can see all the findings
for lambda function.
2531.04 -> You can see if there's a fix available,
2532.69 -> if there's an exploit
available for this one.
2535.33 -> And similarly for others, for example,
2537.4 -> this specific CVE exploit
is available, yes.
2542.07 -> And it was last exploited
on October 24th in the wild.
2546.31 -> So it hasn't been too long,
2548.17 -> like according to our intelligence,
2550.3 -> it has been exploited
in the last month or so.
2554.32 -> And we do give you kind
of which package manager
2556.36 -> where exactly it is.
2557.31 -> So you can see if there are
layers which layer this package
2562.99 -> was consumed through and you
can see all the results there.
2569.47 -> - Kashish, are you gonna talk about
2572.091 -> what environments we support with this?
2573.28 -> - Yeah, so at launch or right now
2576.49 -> we support three run times,
Python, Node and Java
2580.908 -> because that kind of
represents 96% of the functions
2583.813 -> in Lambda service anyway.
2585.85 -> But we do plan on adding
support for other run times
2589.21 -> also pretty soon.
2594.73 -> Yeah, so this was mainly the demo
2597.43 -> and before we jump onto the Q and A,
2602.98 -> I do want to talk about
pricing a little bit
2604.9 -> and then we can.
2606.64 -> - While Kashish switches over,
2608.11 -> I think there's a couple
things we really want you
2611.725 -> to take away from this.
2612.94 -> Number one, we've designed Inspector
2615.297 -> to be easy, low administration
and single click,
2620.95 -> you turn it on for your organization,
2623.5 -> you set it to auto enable
and you can just assure that,
2626.148 -> okay, I don't have any
gaps in my coverage.
2628.87 -> Number two, Inspector
does all the hard work
2631.6 -> of discovering your resources.
2633.91 -> So as your development
teams are doing new things,
2638.416 -> you don't have to worry about it,
2640.3 -> you don't have to keep track.
2641.71 -> Inspector will do that for you.
2643.51 -> And number three, we manage the findings.
2646.21 -> So as you patch, as you destroy resources
2650.14 -> or as new CVEs are published,
2652.522 -> Inspector takes care of the details.
2655.69 -> We really wanna get
you out of the business
2658.51 -> of administrating a solution
2660.28 -> and into the business
of remediating findings.
2663.19 -> And at the end of the day,
2665.02 -> we want you to have one
tool that does it regardless
2667.96 -> of the compute, whether it's
EC2 containers or lambdas,
2671.761 -> that's the goal with Inspector
2673.93 -> and that was the goal of
adding Lambda to this product.
2678.354 -> - So talking about the pricing,
2680.62 -> we have priced it pretty aggressively
2682.63 -> because we want customers
adopt this feature
2687.31 -> and it's not about making money for us,
2690.22 -> it's about making sure
2691.33 -> all your compute environments are secure.
2696.592 -> So the way we price it is
per Lambda function per month
2701.17 -> and it is determined by Inspector coverage
2703.958 -> and what that means is as
soon as it is deployed,
2708.8 -> which means Inspector will
discover it until it is deleted
2712.24 -> or you exclude that
function from scanning,
2715.12 -> we will calculate the number
of hours and we charge by that
2719.107 -> and we plot it by a number of hours also.
2721.339 -> So 30 cents per month per
function is in US East one.
2727.57 -> And if let's say you have
that function you deploy today
2730.93 -> and you delete it tomorrow
we will only charge 1 cent.
2734.41 -> So we will only charge for one day.
2736.21 -> If it is for few hours, we
only charge for a few hours.
2739.15 -> So it is prorated,
2740.292 -> it's not like we charge
for the whole month.
2743.359 -> And there is a pricing example there.
2746.23 -> For example, if you have
10 lambda functions,
2749.14 -> continuously monitor for
30 days, it'll be $3.
2752.14 -> If let's say you delete us
another set of 10 functions,
2756.4 -> but you delete them by after 15 days,
2759.49 -> we will only charge you for 15 days,
2761.26 -> which is a $1.50 and then will be $4.50.
2766.84 -> - One of the important parts to that
2768.55 -> is we want it to be predictable,
2770.71 -> as you saw in Kashish's
example, I think there was,
2773.408 -> how many supported Lambdas
did you have, like 14?
2776.567 -> - [Kashish] Seven, yeah.
2778.115 -> - Oh seven, okay, I can
actually see the screen.
2779.53 -> So in his case, if with seven Lambdas,
2783.34 -> if they were being monitored all month,
2786.25 -> it's pretty easy math, it's
just seven times 30 cents.
2789.25 -> So, that was the goal.
2792.13 -> It doesn't matter if
Inspectors scanned them
2794.62 -> once in the month or a
hundred times in the month,
2797.71 -> you're just getting charged
for those seven lambdas.
2802.505 -> - Yeah, and these are the
blogs I mentioned before
2804.61 -> during my kind of talk before.
2808.27 -> These are also listed on our website.
2810.34 -> So if you go to resources
on Amazon Inspector,
2812.74 -> you can see all the blogs.
2814.24 -> These are some of the critical ones
2815.74 -> that I wanted to make sure
you kind of know about those.
2819.79 -> But others, there are many more blogs
2822.58 -> that we kind of write and we
publish on a regular basis.