Take a seat. It is my pleasure to introduce Bryce, who will be talking about May the Cloud be with you, red teaming GCP. I'll let him take it away. Oh, and real quickly, a slight announcement. We have a, if you're doing the skydiving, see registration today at 1 PM to sign up for a time slot. Back to you. Thanks, appreciate that. All right, I'm Bryce. This is my Twitter handle, tweakfox. So if you want the slides, I'll throw up a link to the slides right after this. So check it out on Twitter. And then we're going to be talking about GCP today, just kind of going over the basics of how you would red team inside the environment, and then just maybe like cool little nuances that you may or may not already know about on the platform. So who am I? I'm Bryce. I used to work at Homeland. I used to lead the incident response and focus operations for the unclassified sock. So that's kind of like hunting down APTs. Then I worked at NSA for a while. I was a technical director up there over a very specific offensive unit. And then I worked at Adobe. I built a red team out for them, specifically in their digital experience business unit located out in Utah. And that is where I physically reside now is near Salt Lake City, Utah. So great skiing out there. And then now I lead stage two security. We're just like a small boutique firm, like 25 people. And we do a lot of pen testing and tool dev and stuff like that. So oh, yeah. Also, I run B-side Salt Lake City. I'm the head of that nonprofit. So anyways, if you guys want to come ski in March, it's usually pretty good still. All right. So GCP overview, because it's only 25 minutes, I kind of ripped out most of the overview. So this is a crash course in cloud. So all right, if you're like an admin and you log into it via the website, that's kind of you log in into the management UI. So that's console.cloud.google.com. If you're using the CLI type tools, you're going to talk directly to the Control Plane APIs. And anytime you're clicking anything inside the website for GCP, that's just going to be calling the Control Plane APIs below it. And as you create resources or services, that's going to reach out to the Data Plane and spin those out. So if you have any type of automation processes or CI-CD pipeline, that's generally just going to talk to the Control Plane APIs, the rest of the APIs there, which are then going to spin up the services in the Data Plane.  And cloud providers are ever trying to generate in the space and they have an array of different services that would be hard to be an expert in all of them. But most people who are using the cloud just kind of at least are using these basics. All right, so let's just dig into the compute engine, which is kind of like virtual machines on the GCP platform. So a vulnerability that's really interesting in the cloud space is server-side request forgeries. So typically, you would have a web application and you would be hosting that on a virtual machine.  So you could get to the web server, but you couldn't necessarily get to any of the other surrounding servers inside the target network. In this example here, we have an application where a user would typically request the slash app URI, and then they'd pass a git parameter for b.jpeg. And then the web app would process that request, say, oh, they want b.jpeg that's over here on this other server that's internal only. I'm going to make a request out to that, grab the content, and then feed it back to the user. So that's kind of the typical way that the web app would work. Now if a web application wasn't checking inputs, then it might be vulnerable to a server-side request forgery, or an attacker could replace the image, the value there in the git parameter, to another server internal to the data center, and maybe retrieve back some type of data that they necessarily shouldn't be able to access. For example, if there's like a monitoring server, maybe like a Nagios, or something like that on the internal, maybe they could pull some type of stats page off that. It's a vulnerability, but it's not going to lead to a full compromise of the whole data center, typically. So fast-forwarding to cloud, SSRFs in the cloud are deadly, right? So because when you spin up your VM in the cloud, the control plane needs a way to communicate certain data to the data plane about what it should be doing. So for example, when you boot a VM, maybe you want it to execute a bootstrip, right? Like run this bash script when you boot up. How is the control plane going to tell the data plane to do that? It's going to take that boot script, put it inside this metadata service, which is like a RESTful API that the VM can call out to. And when the VM initially boots, it's going to call out to that RESTful API that's internal only to it, kind of like a Fabric IP, and then it's going to run that bash script. So there is an RFC spec on metadata services, but each vendor's implementation of it greatly varies from the RFC spec. But generally, it's always going to be on that <IP_ADDRESS> IP address. And big thing here is credentials for GCP services could be stored in that metadata service, which would be accessible via a server-side request for GCP vulnerability. On GCP specifically, there's like a nice FQDN that just resolves to that 169 IP on the other platforms, Azure and AWS, as far as I know, that doesn't exist. All right, but let's say you have a server-side request for GRI in a web application, and it's running on top of the GCP platform, and you redirect it to go to the metadata service, you might see back an error message similar to this, like 4, 3, forbidden. OK, so why are you seeing 4, 3, forbidden? That's because Google has implemented additional protections to prevent server-side request for GRIs' vulnerabilities from being able to access the metadata service. Namely, you have to set another HTTP header in order to access the metadata service. So this applies to Azure and GCP. For most of the stuff, you can query via their metadata services. It does not apply to AWS. There's no HTTP header on the AWS platform right now. So we're the attacker, and now we're sad because we can't get back the creds out of the metadata service to interact with the control plane. So there's kind of this loophole in GCP. And if you look up more docs about it, it says deprecated and will be removed. But it still worked. I mean, I tried this last week, and it still works, right? So I don't know what their timeline is for deprecating it. But basically, if you use slash v1, beta 1, not all the same features are there, but most of the features you want are there, like the credentials. So you just call that, and then you don't need to pass the metadata header, HTTP header. And now you're all happy as a panda. All right, so for example, here's a sweet lizard website. And in it, there's a request for external image. And then the git parameter p, the value of that is some external JPEG stored in an S3 bucket somewhere. And so we'll just modify that so the git parameter p points to the metadata server's FQDN, or you could do the 169.254 IP address, and then use the slash v1, beta 1 with this URI. And what you're going to get returned back is this bearer token right here, or access token. And this is what you're going to need to start authenticating to the GCP control plane with the same rights that the VM is running as inside of the cloud provider. So generally, what you'll do is you'll take that access token right there, and then you'll query this Google APIs right here. And it's going to tell you, one, yeah, that token works. And then two, it's also going to tell you the scope of the token. So this is incredibly nice, because it actually tells you what you can use the token to do, what the token can do inside of the GCP account. Versus on AWS, you might get access to a token, but then you'd have to, a lot of times, blindly guess what it can access inside the environment. If we try to use that token to spin up another VM, it's going to send us back this message by default, like insufficient permissions. So let's look into why we don't have rights to that. If we go to the Web Management Console, like an admin, and then we go over to the Compute Engine service, and we go to spin up a new VM, we're going to see there's a block there for identity and API access. So one of the cool parts about GCP is you could actually specify what that access token inside the metadata service will have access to, which is a little different than the way it operates on Azure and AWS. But allow default access. If we can pick that, that's not going to let us spin up VMs. We'll look at that more in a second. But we could also pick set access for each API, and that will let us pick, like, hey, I want this box to be able to talk to BigQuery or some other GCP service. So by default, these are the services that you can query. You can see Compute Engine, that's disabled, so you cannot spin up more VMs if you still creds this way. And yeah, we'll come back around to this more in a second. And then there's also that middle box, full access. So if that was selected when the VM was spinning up, then yes, those credentials can totally be used to spin up more VMs inside the environment that are under the attacker's control. So it really depends on the permissions there that are set around the VM when they're booted up. There's some scripts here on this GitHub for just those requests I showed you there. You don't really need to use them. I just more put them there for documentation purposes. All right, cool. So let's look at storage, right? Ton of cloud storage breaches out there. This is just from a small six-month period. We see names like Accenture, Verizon, Timor and Acable, Dow Jones, DGI, all using storage account and cloud providers without properly securing them. So there's a cool project out there called buckets.greyhatwarfare.com where they just go and index all these public buckets and you can search through them. I'm not sure on the legality of this, but it's a cool idea. Basically, in the cloud space, there's two permissions that you want to watch out for on the GCP and AWS platforms. All users means public and all authenticated users. Sounds like only people in your GCP count would be able to get to the files or resources and objects in the buckets. But what that actually means is anybody who has any GCP account can get to the resources. So that tripped a lot of people up on the AWS platform specifically. The cloud providers have made changes in the last year or so to the interfaces for storage accounts to make it a lot harder for you to make objects public. So that is positive from a defense side. But you'll still see stuff set up incorrectly. Generally speaking, storage on GCP is pretty uniformed. It's storage.googleapis.com. Then you have to have a globally unique bucket name. And then you'll have the object or file name here. You can't set buckets listable. This is not a typo, but the top does say the Amazon S3 spec for the list. So that is the way GCP does that. And you could brute force for objects or bucket names using a tool like GoBuster, just like you would on any web engagement. OK, so one thing that I just wanted to highlight real quickly is if you spin up a VM and use the default settings and you look under storage, it says by default you have read-only access to storage. So what does that actually mean? And what that means is there's this concept in GCP of a project. And so almost everything in GCP is segmented at the project level. So you have an organization. You'll want to create a folder underneath it, even if you don't use the folder. And then you'll want to create projects underneath that folder. So if you get the credentials out of the metadata service and then there's a storage inside that same project, even if that requires authentication, you'll be able to read the objects in that storage account. So that's a good way to expand access. OK, we've got a few minutes left. So I'm going to talk about Kubernetes. Basically, the scenario we got here is there's a container running a web app. It has some vulnerability in it that enables remote code execution. For the demos, you might see in screenshots I load up the Voodoo tool, which is kind of our cross platform post-exploitation tool. And then we kind of see what damage could be done inside the cluster or how you would expand access from there. This is really looking at GKE, Google Kubernetes Engine specifically. There's a lot of different Kubernetes implementations out there. And this is just kind of default setup as of 30 days ago. OK, cool.  One way is you could cat proc one C group. And you can see in the listings, if you can see the monitors, that it says, this is a kube pod, right? If Docker's in use, you could LS the root. And generally, you'll see that hidden file Docker environment. And then the other one is, if you do a PS, a process list on the box, you'll see that PID 1 looks weird, right? It doesn't look like a net or launch D, which are typically some of the early processes that get started up on Linux systems. For example, this would be a typical case where you'd see a Flask web app as PID 1. So you know you're inside a container environment. OK, so probably no secret here if you're familiar with Kubernetes, but there's creds basically stored in this location right here on disk. So if you can read that, then you can start authenticating to the Kubernetes API. One thing to keep in mind is that Kubernetes, the way it works on GCP, it just creates instances under Compute Engine. So even if you get access to a container by default, you can redirect and talk to the metadata service, just like we saw in the past example. Grab those creds and start using them to talk at the GCP level. So here's an example where we load up a Python script and we pull creds out of the metadata, get back that access token. One thing that is kind of interesting is as part of the bootstrapping process on the GCP platform, there is a Kube environment set inside the metadata service. So this is used when worker nodes are being bootstrapped or loaded initially, and you can pull those credentials out of there. Now there's a little more work that you need to do here in order to be able to use those to talk to the Kubernetes API, and you can check out the references on the bottom of this slide, and I will post the slides on my Twitter account for you guys. But you go through a couple of steps and then you can authenticate to the API and potentially spin up more pods inside the cluster. All right, another way you can expand access, if you get access to a container, is by default, there's really no enforcement of network boundaries. You would have to implement something like Itso or Cilium inside the cluster to prevent that. So a compromised pod could talk to the Kubelet service on these TCP ports. So here's a Python script that I load up into memory only to scan for the port, and then another Python script where we would just access those to list out what pods are running on the other worker nodes inside the cluster. And then container security is really just Linux kernel security, and this is one thing that I think, if you don't take anything else away from here, that hopefully you'll take away is, there was a vulnerability earlier this year, the Run C vulnerability, and that would allow you to break out of the container and get code running on the host. But the DirtyCal exploit from a number of years ago would also do the same thing, which is typically an exploit used to progress from user to root on a Linux system. But it would also have the capability to break you out of the container. So container security is really just Linux kernel security. You could use a set comp or some other controls to try and prevent what kernel API calls can be called from the container, but yeah, for the most part. Like a common thing that you'll see a lot if you search for like Kubernetes hacking is after they gain some type of credentials, they'll talk to the API and then they'll deploy another pod that has a container that will have the root file system mounted. You know, this may or may not work in your target environment, the security posture of it. And another thing to just kind of be aware of from a high level is they're constantly rolling features into Kubernetes. And most of that code is accessible by this API here. So some of that code is gonna have vulnerabilities. And in 2018, there was a vulnerability in the API that would enable you to bypass all authentication and authorization. So basically if you just talk to the API for Kubernetes, you could do anything inside the cluster. One thing that I've been releasing this on engagement but technically you have something that's managing the containers on the worker nodes like Docker, so if you were to misconfigure it with an unprotected TCP socket, you could move laterally that way too. Okay, great. Okay, so we talked a little bit about breaching the environments from server side, right? Coming in from the internet. I just wanted to talk a little bit about breaching from client side or trying to get access to either the engineers or the cloud admins laptops, right? So may or may not be applicable to you but a lot of tech companies, they use Mac endpoints. There was a recent vulnerability in Excel on Mac that would basically allow you to get code execution via an XLM macro. So that just came out last month or this month. And then prior to that, I don't know if you guys know Patrick Warderl but he has a lot of research up on his blog that's really good if you're interested in Mac exploitation, the blog's objective, see there's links in the references. But basically if you can take advantage of a vulnerability like the XML one or whatever, XLM, then you could get code execution on a laptop. And if you were to get code execution on a laptop and they were using the CLI for GCP, it would create this dot config folder and then you'll see some files underneath that. And the files you'd see underneath that look like this, right? And the one that says access tokens.db looks pretty good. So if we start checking that out, we realize that's just an SQLite database. And if we extract the data out of there, we can get a token that allows to authenticate to the GCP control plane in the context of whatever that admin can do from his laptop. Also to know, there is also inside that same database, a list of the scope of what those credentials can access. So that's nice from an exploitation standpoint. You can see how valuable they are pretty quick. And then another thing I just wanna highlight is cookies, right? Like a lot of the admins aren't even installing the CLIs on their laptops anymore. And I'll show you why in a second. But they still authenticate using their browsers. There's a cool technique, cookie crimes. If you haven't checked it out, you should. But you could exploit the cookies, replay them, or to jump into their browser sessions. So when you're inside GCP and a few of the other cloud providers have copied this, there's a cloud shell. And this is really popular with the SREs or admins for the cloud now. Cause they don't have to install anything on their laptop. They just log in with their browser and they can click this button in the upper right-hand corner and then a containerized environment gets deployed and they can run all their commands from that containerized environment, right? So that's cool. The first thing to note from an offensive standpoint, like let's say I still someone's cookies and I'm somehow able to access the GCP environment, but it's not gonna last long, right? So I wanna persist some way. So I thought about this in the context of the cloud shell because I see this in use a lot now. And you'll see right there, it says, your home directory will persist across sessions, right? From an attacker's standpoint, but that sounds pretty great, right? So what if we just make a slight modification to it, old-school-skyle, like we dork the BashRC to load up our tool whenever they load up this environment? Does that actually work? Can we get a callback out of the cloud shell environment? And yeah, the answer to that is yeah, we get a callback every time they click that button and the BashRC gets loaded to our LP where our red teaming software is at. And then from there, we have the same level of access that the admin does inside the cloud shell. Two minutes. Okay, so there's some really cool, I don't know, Twitter chatter, is that the right term? Just on how to get outside of that shell because that shell's kind of a container. So I guess the route, you can get to the root host below it just by running that command at the top. So I did that and from there, you can access the metadata service from the root host, but there's not really much you can access from there, so that's kind of mostly a dead end. But from a persistence standpoint, I did notice that you can store files when you're on the host below that container in slash temp and they have a few other mount points that are writable and those seem to persist at least for a moderate amount of time. So that's kind of cool, maybe like a little bit of a covert store type system if you were using this in real life. All right, one minute left. Okay, last thing, okay. So when a pod goes to authenticate to the API or somebody else, what really happens on the hood?  And then there's this new thing called admission control. And what does admission control does? It does really useful things like validates that what you're trying to deploy inside the cluster isn't doing anything bad from a security standpoint. But like for example, mounting the host's root file system and things like that. But what I noticed was you can have, because they didn't wanna make you code everything inside of that, you can reach out to an external admission control. So let's imagine you get some type of privilege access inside the Kubernetes cluster and you wrote a evil external admission control. You could mutate deployments as they move into the cluster. And this is a newer thing, it's still alpha beta. So you may not see this in production, but I definitely feel like this is the way the industry is moving. And with that being said, I'm Bryce. If you wanna talk more, just be hanging outside. I know I went through a lot quick, but thank you guys for listening. So.


What's up everyone it's your girl Kenzie here from Layton Sports Cards and I am ripping brand new release today We've got 2021-22 Panini recon basketball hobby six box break number five pick your team Let's go over the teams and then we'll get ripping here Um andrew s t-wolves bohabby clippers chris s lakers dean i pistons denise each bowls diego b nets and kings dylan l blazers edgar b hornets Eric elfred c with the raptors um jeffree c grizzlies um grant grant b with the calves and maves jiu w jazz kahoon k nuggets kyla m wizards lairsack y with the thunder and spurs mat l heat matias s hawks ryan t celtics and sixers um sock okay with the warriors shelly l suns shy g s pacers tonovot s palikins tarant l magic thomas d bucks wane s nicks and wong s with the rockets all right best of luck everyone here we go here we go let's see if we see a uh another hollow dot should we come up here shortly seems like it's a it's a case hit out of this jt thor rookie blue to 99 montrez harrell and future legends jalen green gotcha dean gotcha gotcha i appreciate it kobi white we've got grace and alan hollow and top of the charts of uh clay thompson scored an mba record 37 points in a quarter that's crazy in 2015 then we need kispert rookie we've got uh bronza 299 miles mcbride nicks and davion michel on the recon rookies we've got another villy rookie auto on the true potential there you go we pulled the one of one of this uh out of the very first break first box out of the first break i believe hollow joshua primo rookie and charles bassie pink rookie sixers train man rookie thunder errant gordon hollow and rookie uh recon of jonathan kominga warriors demarda rosen hollow and pink robert covington kessler edwards rookie we've got purple to 49 steve nash suns and future legends of anthony upwards tewells and green branna ingram hollow and rock the rim russell westbrook lakers vanton rookie four of five green demarda rosen for the bulls there you go chicago denis h four of five rice one there and maneuvers jason kid the second green we pulled today personal was a color match of jason tana mose nasty got moses moody rookie tyler hero on the hollow and future legends lamella ball tucker red rookie to 199 toscano anderson warriors and trey man rookie recon but we're having a great friday i hope everyone has a relaxing laid-back weekend as well we've got hollow rookie cameron thomas nets and future legends of luka donchich kayla will be live tonight starting at 415 again he's only got a couple breaks left with spots available everything else is sold out derrick white hollow and maneuvers of alan iverson no sixers bassy rookie red to 199 marvin bagley the third maneuver steve nash well tylin rookie josh hart we've got blue to 99 isaia thomas pistons blue color match rock the rim simons we've got celtics a 17 of 25 rookie auto true potential of sam hauser celtics on the purple rookie auto josh giddy on the pink hollow rookie thunder and maneuvers steve nash kisbert rookie we've got pink joelle and bead and rock the rim john collins jalen johnson rookie nicks rookie auto quitton grimes quitton grimes for next year already caruso on the pink and shrey man rookie recon that's awesome playing it far in advance fall pierce pink and future legends kade cunningham kelly olnick and luka on the future legends box three here let's see kade ink let's see some kade ink here scone o anderson ricky bradley bill uh reviss on the rookie recon a word called to excellence for the nicks green four and five rj barrett boom wane s with the nicks called to excellence green nice barrett isaia thomas and kind of lorry on the pink gotcha yeah that's that's a great idea having to take uber's and stuff from the hotel of the national this year was you know when everyone gets out at the same time maybe standing there sometimes and then surchargers and stuff like that moses moody rookie we've got devin booker bronze the 299 sons and maneuvers john stockton bronze vagner rookie blueda 99 clint capella hawks rock the rim jason richardson ronson fornie canard we've got future legends friends vodka sorry williams rookie out of 299 bronze uh raul nito and future legends diadre eighton london london eighton uh con sexon hollow and jailen sighs rookie recon jaw hollow derrius garland and we've got all systems go yannis onto the kumpo for the bucks shingoon rookie out of 199 jeremy grant pistons and rock the rim zack levine last pack box three here got thunder erin wiggins on the rookie auto there you go okay c erin wiggins halliburton hollow and pink lanzel ball box four butler rookie jericho sims rookie hollow nicks and bones hylen rookie recon ergie barrett's got kings on the key to rookie true potential auto the myos key to kings gary payton hollow and maneuvers jailen green brown base kade conningham base rookie harrison barns bronze 299 kings and rock the rim paul george grants rocket's claim to fame to 75 steve francis there's one you don't see often steve let's just say steve franchise starts fast finishes as rookie of the year corn there uh siakam hollow and clay thompson on the pink now it's just backwards daren fox book night rookie bronze the 299 norman powell clippers and jonathan kumango rock the rim holiday hollow denny green and all systems go evan moblie calves bridges hollow tiris maxi and purple marquel folds kade conningham ricky base blue clay the glide for the blazers to 99 future legends josh giddy revist rookie rev rookie to 199 josh giddy nice one they have thunder and future legends scotty barns thanks ricky back there last pack box four yanis hollow and pink josh giddy thunder bunch of goodies on that uh last couple packs box five here they are slowly but surely dean sam snarkich and maneuvers halloween sixers got purple to 25 ricky auto charles bassie no philly sga hollow and pink rj barrett kenny and johnson we've got gold to ten ray allen supersonic little off color match there on that gold that will go ok c that will go to the thunder six out of ten and rock the rim anthony edwards hollow and sky's the limit jaw belly rookie red 199 lory marquenon calves and future legends tiris maxi got rockets little k pj on the red to 75 destined for greatness they sit there rockets that is 19 of 75 it's from the red connelly hollow and all pro team kd nets moses moody rookie to 99 blue roody gay jazz rock the rim erin gordon yanis marcus the marcus cousins on the hollow pink protons that's a new shangoon rookie peron's the 299 meleaf munk lakers future legends cameron thomas us pack box five bridges hollow bogdanovich and rookie recon of herbert jones last box here get everyone all the daytime breaks are filled up let's get uh klobs filled up he's only got three total spots uh three total breaks with spots left k g hollow rock the rim jason tatum he's got two baseball and one football and football is a full case break to your random teams 20 boxes of contenders optic we've got rookie auto jt thore hornets hornets on the rookie auto brogdon hollow and future legends lamella ball and the two baseball you got a full case uh 12 boxes of tier one baseball it's a random team break it's 99 on sale for 99 99 a spot and then a full case which is three boxes of definitive baseball random teams from vagner rookie so two good baseball nice one here there you go dean to 199 on the red kate cuttingham a little color match there with the jersey and james booknight rookie recon definitive baseball is nasty some really big cards come out of that product for sure we've got another one here i want another dent lift shrimp to 99 this time for the supersonics again we'll go to the thunder lights out shooter shrimp could make it rain in seattle that's for sure to 99 on that what's up some victor uh landale on the rookie hollow and kemma walker pink big hits recently for his jayden springer rookie red to 199 jada mcdaniels for the teawolves uh josh kitty thunder on the rookie recon all drench obi top and hollow and all systems go step curry warriors right all star yeah dean pulled a couple really nice uh supersonics this break lebron base den weighty hollow pink alvarado on the rookie for the pelicans scano anderson rookie jeremy grant hollow oh no that's not hollow that is bronze to 299 apologies pistons and maneuvers chris paul jaylen suggs rookie magic i don't know what you mean by that riri hachimara on the uh bronze to 299 and maneuvers kairi erving and we've got djante murray hollow and pink oh markers all drench all right let's do a recap here we've got gold to 10 on the ray allen that's a sick one there a little off color match on the gold jersey there again that'll go to okay see got demar de rosen green for the bowls nice when they're too low numbered out of this case uh half case jg thore hornets erin wiggins thunder quintagrams nicks nemesquita rookie uh kings villy rookie auto bucks we had the purple of 25 trawls bassy for the sixers sam hauser true potential purple for um celtics to 25 that left shrump the 99 for the sonics again we'll go to okay see francis to 75 auto rockets red dustina greatness out of 75 of kevin porter jr rockets and then the green four five called to excellence rj barrett there you go nice one there nicks all right that'll do it for this half case we've got more recon coming right up


Hello everybody, Andrea Mayesty here with Dental Health Tutoring. Now, people often ask me what I do for self-care. Now, I have been very, very lucky though. I've been working now for 13 or 14 years and I haven't had any major issues where I know hygienists that have been working two years and are getting back pain, hip pain, wrist pain, anything, right?  It's hard on your body. I think, I think that it really depends on how you work, how much you work, and it depends on a number of things. Again, I've been working for 13, 14 years. I haven't had any major issues, knock on wood. Having that said though, I did sign up for disability insurance about four years ago because I'm a firm believer on spending the extra money to get insurance in case something happens. But the plan that I did sign up for is if I don't claim any insurance, so again, knock on wood if I don't have any issues and I don't use my disability insurance. When I turn 65, I get half of the money back that I paid. I'll have to double check those numbers, the figures because this was four years ago and the advisor that I signed up with isn't very helpful to be honest. I call. I leave messages. They don't follow up with me, so I really need to look into that just to double check to make sure that there's no, you know, confusion, but that's why I signed up for it in the first place. The thing about disability insurance is that there's many different plans. There's many different policies. So look into it. I hired a advisor to look into different insurance plans for me. So he came up with three different ones that I would pick the best one that works for me. Some were, you know, cheaper in the middle, more expensive, but all of the plans are different. But I also own my own tutoring business, as you guys know. So if I was ever hurt or injured where I couldn't work, I wanted to still be able to claim my disability insurance, but still be able to tutor. So there's different plans where if, let's say you get injured at work and can't work as a dental hygienist, I could still work and do something else. So tutoring online, you know, teaching. But there are other plans that if you don't pay as much for your disability insurance, if you have to claim that, it means you can't work. Which, for a lot of people, sounds awesome, right? But I wanted to be able to have that backup to still be allowed to tutor and make money tutoring. Because if I signed up for that plan where I would get disability insurance, you know, get that paid out to me if I couldn't work as a dental hygienist and I still tutored and made money, I would not be able to take my disability insurance, you know, money from that. So why am I paying into something that I wouldn't be able to claim anyway if I needed it? So, but I'm not an advisor in any way. So I can't help you pick the plan that's best for you. But the best advice that I can give you is to hire an advisor because they look in to different insurance companies for you, for your needs. OK, so this video isn't about disability insurance, but that's just kind of the first thing that I thought about because that's what I did first thing when I became a dental hygienist because you never know what can happen. And look at it this way, look at it on the bright side. If you don't use your disability insurance, yes, you paid for it, but that's a good thing. It means you're not injured. It means you're not disabled. So that's a good thing, right? Like a lot of people say to me, well, I don't want to pay for insurance because if I don't use it, it's a waste of money. Well, yes, you're paying into it, but you're not injured. That's a great thing, right? Right. But if you need it, it's there. So please look into it. So that's what I did first. But I do also get a massage once a month. That really, really helps me. And again, I haven't had issues for 14 years, so it must be doing something, right? I've been getting massages not since day one. I wish I had, but I'd say the past three years. We lost our insurance benefits because I used to work full time and my husband used to work full time, but we both don't. We work from home now for the most part, so we don't have a really great insurance plan. So admittedly, it's been a couple of months since I've had a massage where I'm going to book one today because I want one. And I might not go every month now. I might go every other month because I'm covered for the most part every other month, but not every month. So it's just me to save some money. But if I notice me being more sore, then I will spend the money to go every month because it's worth it. I pay about $90 an hour for my massages. Places, every place is a little bit different. So look into that. I paid $80 before, but where I live now, it just seems to be $90 everywhere for one full hour. I like the hour because half an hour, I feel wouldn't really do much, but I could be wrong, but that just really helps me. And a chiropractor, I started seeing a chiropractor about three months ago, or sorry, two months ago now, only because my massage therapist said, oh, you're really tight in these certain areas. You're not normally, so you should see a chiropractor because there's only so deep that a massage therapist is allowed to go, right? Like we're not allowed to do a lot of things, right? As a dental hygienist. We're not allowed to dive in those X-rays. We're not allowed to fix cavities, right? We know it needs to be done, but they need to see a dentist. So my massage therapist said, you need to see a chiropractor. I never thought about it before. I didn't want to because the whole cracking thing I didn't like, but I was kind of in pain actually, but not from being a dental hygienist. We were organizing our house and moving a lot of heavy boxes. And I think I just pulled something the wrong way where I would breathe in and my ribs would hurt, okay? So it was kind of weird. So she said that I needed a thoracic adjustment. I went to the chiropractor. Yes, there's a couple cracks here and there, but he did say to me, he said, you know, the cracking doesn't mean it's working. You might hear that, but it doesn't mean anything. It doesn't mean you have to hear the crack for it to work. You might hear a lot of cracks one appointment. You might not hear any the next. Just everybody is different. So it did kind of, oh my God, like that was a crack. You know, not scare me. That's not the right word, but I was kind of apprehensive about it, but it works, you guys. I can't explain it, but I just feel so much more, I don't know, like looser if that makes sense. Like I can bend over a certain way and not have it hurt me, which I didn't think was an issue before, but now that I know what I can do now after seeing a chiropractor, I just feel better after work, not as tired, not, I mean, I was never sore, but I was tired, like exhausted. After an eight hour a day, I'd be like, oh, I have to sit down, you know, I'm so tired, not sore, but just kind of tired, right? So I see a chiropractor every two weeks. It was once a week when I needed that thoracic adjustment because it did take a couple of sessions, but now it's every two weeks and that works for me. Same thing, no, it's expensive, you guys. We pay about, because my husband sees one too, about $50 per visit and it's only about 15 minutes. I know, crazy, right? We're in the wrong profession. We should have been a chiropractor, but it really helps. And we have insurance now, but we didn't the past couple of months, but we did pay that. I needed to see one every week. We did pay that because it made me feel so much better and I'm doing it for me so that I can live a longer, healthier life and that you guys can have a longer, healthier career as a dental hygienist. Another thing is too, is that, what can I say? Another thing is too, that I don't work full time. Those hygienists that work full time for 20 years hardly get a lunch break, you know, things like that. It's more taxing on your body. I think because I'm not in pain or sore and still love to work is because I work part time. I did work full time for, I'd say 10 years, let me think now. Yeah, I'd say about 10 years actually. Wow, it seems like a long time, but it didn't seem like a long time at the time. I worked full time for about 10 years and then I worked four days a week for a couple years. Three days a week seems to be the norm now. So I work two to three days a week now. Five hour days, six hour days tops and it's amazing. Now to work an eight hour shift, I'm exhausted. Seriously, I don't know if it's my age. I'm not old, but I'm exhausted. I can't do it. If you're young, you're excited, heck, work full time, work eight hours because now's the time to do it. When you get in your 30s, you won't want to. So do it now, you guys, honestly. But also get loops. I have loops with a light. I talk about all of the loops that I have tried in another video, so be sure to do a search for that. Loops with a light makes a big difference. Sit up straight, okay? Sit up straight. We all do it where we have to look quad two lingual, you know, even I still do that, but I'm conscious of it and I go, okay, I can't be doing this, the whole quad two lingual here. So let me get that one spot that I'm having a hard time with and then get back up again and then use indirect vision. Use proper ergonomics. I can't stress that enough because the thing about my chiropractor, he always says, make sure to keep moving. That's the best thing you could possibly do.   You can't just get up and leave in the middle of cleaning somebody's teeth, right? They're our appointments. That's fine. But just make sure to get up after that and move. I do the same thing at home. When I'm teaching, usually in a sessions an hour, if I'm doing a video like this, I'll typically do three in a row and then get up and move. So I'll put the dishes away. I will unload the dishwasher. I'll put in a load of laundry. I'll let the dogs outside, whatever it is, get up and move, that really helps. Yeah, that's literally just my self-care. Nothing exciting, nothing special, but that's what I do and I haven't had any issues. If I forgot to mention something though, you guys, please let me know. And thank you so much for watching. Please make sure to hit subscribe because it's nice to see how many people are watching me. I don't know. And make sure to comment if you have any questions. I do try to check the comments now once a week because I haven't getting a lot, which is awesome. But I can't check them every day now because I'm getting pretty busy with my tutoring and with other things, but I like to check the comments every week and I do answer all of them. So please feel free to comment. The good, the bad, whatever. I mean, if it's really mean, I'm going to take your comment off because that's just not necessary. Like I've had some weird comments lately over I'm thinking. I'm pretty sure you're not in the dental industry. Why are you commenting on my videos? So I will take those out, okay?  But if you don't like something, let me know. That's okay. I like to hear feedback. But yeah, let me know please. I look forward to reading the comments and let me know if I missed anything. Thank you guys for watching and have a good afternoon.


Good afternoon, folks. This is Steve Rhodes, coming to you live from the shores of very sunny Delray Beach, Florida. This is your 2 p.m. update in killing of all the U.S. indices trading to the upside. The Dow is up 358, a little over 1 percent, a little over 1 percent for the S&P of 48 points. NASDAQ has woken. It's up 0.8 percent or 95 points. The Russell's up 0.9 of a percent. They're up 16 points. If you take a look at the semis, they're up 0.7 or 21 points out there. Gold's up 31 bucks. Trading is 17.69. Silver's up a buck 30. Trade at $19.93. Light's recruited back 33 cents. The natural gas contract off 30 pennies as well. And a 30-year treasury printing out at $143.10. That's up 18 ticks. So let's do this here. Let's go take a look at our U.S. indices charts. Let's go to this set of charts out here and take a look at the A to B equals CD patents. Take a look at the Dow Jones. Dow Jones has passed the 1 to 1 level on its way to $32,982. It'll head to that target level unless there's a bearish reversal candle that forms. Then that would form a sell the D point pattern. That's going to apply to all of these charts out here. The S&P, its next price target level is $41.14. That's 1.272 expansion of its A to B leg. The NDX100, as long as it closes the day above $12,662.86, then it will negate its already sell the D point that took place last Friday. And that would then suggest to move to $12,771. And above $12,771, we're looking at $13,165. The Russell 2000 negated its sell the D point pattern yesterday by closing above the high of $18,4219 that occurred on Friday. Its next price target is $18,772. Above that, you're looking at $19,24. The semis out here. So the semiconductor indexed different, the SMH, different than the industry. The industry yesterday stopped that resistance. That's at $29,1823. If price closed above $29,1823 at four o'clock today, you will then have a signal that price wants to go make that 1 to 2 A to B equal CD move up in the $29,966 level out there. And the trend is right now, they're taking on descending trend line resistance and suggest that this wants to do at least a 1 to 1 A to B equal CD. That would take you to $14,696. Its B to C retracement area was only a 0.382, 38.11 to be exact. That says the trainees want to do more than a 1 to 1 A to B equal CD pattern to the upside. Folks, stay tuned. Your favorite polar bear, David Weitz up next. I'll be recording tomorrow's show between eight and nine. We'll make it as pertinent as we can for the 1 to 2 o'clock timeframe. But please join me for TN Crumpets if you're up. Take care and have a terrific Thursday, folks.


That's a good rep, push the communication. Here we go, face, face, face, face. Shane Bowen is in his first season as the Titans defensive coordinator. As a walk-around coordinator, Bowen no longer has the responsibility of coaching a single position. But for the first three years on staff, Bowen was in charge of the outside linebackers. They were that footwork yesterday, aren't you? How's your focus on your get off and all that stuff in this third down deal? That's why when it came time to talk about Harold Landry, we went straight to Shane Bowen. And he was glad to talk about one of the Titans' most reliable performers. Harold Landry is, he's a professional. He's competitive. He wants to do great. He wants to do great things. He works every single day to improve. He's always looking for something to get his game better. He never says boo about what we ask him to do. We ask a lot of him. Not always things he should wanna do, right? But doesn't bat an eye at it, ultimate team guy. His growth as we go as a pass rusher, like just continuing to stress to him, like it ain't all about the fastball. Like we gotta be able to counter and you can set it up sometimes, right? And I think he's learned, I think he's learned kind of how to rush where it's not always all speed all the time. You see him working some things. One thing he's still gotta continue to add to his arsenal. But I think he understands who he is too. And that helps him find success in all those different roles. When he's out there, I know what I'm getting, right? Which that's what you want. You never wanna have somebody out there that you're not sure what you're gonna get. But really glad he's a part of this piece. And I think he's coming along, developing a little bit more as a leader as this thing goes too. So here's what we know about Harold Landry. He's led the Titans in sacks the last two years. He placed the run and the pass with equal intensity. In his time as a starter, he's played about 90% of all defensive snaps. But we don't know much else about Harold Landry because he doesn't really like to talk about himself. So we asked defensive coordinator Shane Bowen to give us some nuggets about Landry that we might not know. I would say Harold Landry is very intellectual. Like he is very well thought out, has an answer for everything. He's got a great personality. He can cut it up with all the guys.  And at times as a hindrance, I always tell him like, hey, Harold, like cut the thinking out, man. It's time to go. Like don't overthink this stuff. Like we got to go play. I think there's a lot of potential still in him. I really do. I mean, you saw flashes in 19. Flash here obviously wasn't probably as good as he would have liked. But again, it's not always all about numbers in terms of sacks and some of that. Like a lot of pressures, a lot of other ways he's affecting the quarterback by what he does. He works his butt off in the off season. He's always ready to rock and roll. It's a matter of us finding ways to keep him fresh throughout the year, keep him ready to go. And I'm excited for what he might do this season.


Gojul and Merry Christmas my esteemed Laddingtons. I am checking in from Jotunheim Last time I was checking in from Nagaroth before Skadi had blessed us with her Mighty snowfall. So yeah, I am beyond excited. I haven't been this excited for snow since I was very small So good times good times. I simply made this video to share my excitement and of course I wish you Gojul and Merry Christmas and as I said in a recent video My plans are quite simple Spend time with the wife and the cuddle princess Read some books Siege of Terra in Horus Heresy play some total war war hammer just completely checking out from from the world taking it easy and then in January I will be Fully loaded up with you know creativity and I will resume the productiveness and in regards to video making I Yeah, full steam ahead January onwards, and I will endeavor to make some more Tutorial videos just giving good advice that you can use in your In your everyday life. So that is the the plan for YouTube and of course full steam ahead with Jotunheim and legia gloria as well Hopefully many of you have already gotten Presents from legia gloria. If not, I am sure they are in in transit. It's been total chaos with the postal systems and Really frustrating for me, of course but you know, they are Overwhelmed the postal services so have some patience as well. I have my My full understanding for the the postal workers because you know, they have restrictions for from corona virus etc So a lot of things to do, but don't dwell upon that. I won't dwell upon it. It is what it is the Deliveries will come when they come simply so Yeah, encouragement if you are in good old you to name good old Scandinavia get out enjoy the snow I Will now hit the template iron and Give thanks via Some good old squats to scuddy, so she will continue to bless us so I can make some nice epic Videos in the snow Good times good times. I wish you all a Again Merry Christmas, and I will see you in the next video. XO XO


What the state is not. The state is almost universally considered an institution of social service. Some theorists venerate the state as the apotheosis of society. Others regard it as an amiable, though often inefficient, organisation for achieving social ends. But almost all regard it as a necessary means for achieving the goals of mankind, a means to be ranged against the private sector, and often winning in this competition of resources. With the rise of democracy, the identification of the state with society has been redoubled until it is common to hear sentiments expressed which violate virtually every tenet of reason and common sense, such as, we are the government.  If we are the government, then anything a government does to an individual is not only just and untiranical, but also voluntary on the part of the individual concerned. If the government has incurred a huge public debt which must be paid by taxing one group for the benefit of another, this reality of burden is obscured by saying that we owe it to ourselves. If the government conscripts a man or throws him into jail for dissident opinion, then he is doing it to himself, and therefore nothing untoward has occurred. Under this reasoning any Jews murdered by the Nazi government were not murdered, instead they must have committed suicide, since they were the government, which was democratically chosen and therefore anything the government did to them was voluntary on their part. One would not think it necessary to belabor this point, and yet the overwhelming bulk of the people hold this fallacy to a greater or lesser degree. We must therefore emphasise that we are not the government. The government is not us. The government does not in any accurate sense represent the majority of the people, but even if it did, even if 70% of the people decided to murder the remaining 30%, this would still be murder and would not be voluntary suicide on the part of the slaughtered minority. No organisist metaphor, no irrelevant bromide that we are all part of one another must be permitted to obscure this basic fact. If then the state is not us, if it is not the human family getting together to decide mutual problems, if it is not a lodge meeting or a country club, what is it? Basically the state is that organisation in society which attempts to maintain a monopoly of the use of force and violence in a given territorial area. In particular it is the only organisation in society that obtains its revenue not by voluntary contribution or payment for services rendered, but by coercion. While other individuals or institutions obtain their income by production of goods and services and by the peaceful and voluntary sale of those goods and services to others, the state obtains its revenue by the use of compulsion, that is by the use and the threat of the jailhouse and the bayonet. Having used force and violence to obtain its revenue, the state generally goes on to regulate and dictate the other actions of its individual subjects. One would think that simple observation of all states throughout history and over the globe would be proof enough of this assertion, but the miasma of myth has lain so long over state activity that elaboration is necessary.


Dear students, in this module we are going to discuss the functionalist perspective about religion in great detail. In our previous module, we discussed these three major perspectives and their point of view about religion. Now, we are going to talk in detail that how functionalists are viewing the religion and religious practices in any society. Religion plays a vital role in maintaining social order and stability by providing individuals with a sense of purpose and meaning. In any society, the role of religion is very important and plays a very important role. Especially when we talk about the relationships between the people, their spiritual and their behavioural and their interaction patterns. So, the functionalist point of view is that religion is actually a binding force that keeps people connected. So, a very important role is that the rest of the religious institutions are also present such as family institutions, political institutions, economic institutions. In these, religious organizations keep people connected to each other. Especially when we talk about morality or morals, the morals of the people because religion is the definition of right and wrong. So, the functionalist point of view is that the definitions of right and wrong are shared standards of desirable behaviour that we have to act in any context such as how we have to interact with each other, how we have to reflect our values. So, we get all these standards from religion. So, religious institutions and practices help to reinforce these shared values and beliefs within the society. And because these beliefs and values are shared, a majority of them are practicing and that is why we feel the connection with each other. For example, when you go to the mosque and pray, this is also a reflection of shared feelings, a reflection of sharedness in which you can see how people are performing an act with each other in one way or another. So, the functionalist point of view is that religion is a very basic feature or function that creates a bondage in people. Then, religion can provide individuals with a sense of community and belonging which can foster the social integration. Interestingly, the bondage process is connected with the collectivity of the individual and the purpose of life, the purpose of coming into the world and especially how he has to live his life. All these things are derived from religion. Religious institutions also provide a framework for moral and ethical decision making. Right or wrong definitions are coming from religion. In any scenario or situation, religion tells us that either you should behave this way or that way. For example, practice of zakat, which is charitable giving in Islam, is seen as a way to support those in need and promote the social welfare. So, the philanthropic actions that religion always supports, if you give zakat or satka, then it is very much appreciated in religion. So, the functionalist point of view is that it performs a very positive role and performs a very positive function. Then, religious festivals such as Idul Fitr, Idul Azha provide an opportunity for people to come together and reinforce the shared cultural values and practices. On the occasion of Eid, people take part in worship. This also develops the feeling of social cohesion and cooperation in people. So, it is a food for thought for you that you should see from the functionalist point of view that how our different religious values are performing a functional role in the society.