• 0 Posts
  • 59 Comments
Joined 2 years ago
cake
Cake day: June 21st, 2023

help-circle




  • If you are building a static system, SELinux is amazing. You need a few lines of policy per application to label things appropriately, then you can see what accesses programs made and decide if you want to allow them or not.

    Taking a full Linux system and adding a locked down SELinux policy can be done in less than a week. If you are starting with an SELinux enabled system and just want to lock down your application, it can be done in less than a day.

    Once you know what you are doing, there is also a pretty powerful policy analysis tool that lets you see what a given domain can do; including transitive things like “domain sandbox_t can launch a program in Domain vim_t, which can write a file in Domain sshd_config_t, which can be read by domain sshd_t” which may indicate that your sandbox has a hole allowing it to compromise your sshd configuration. Although, to be fair, doing this level of analysis is not simple, even with the tooling. And you very quickly notice issues that are inherent in how Linux works.

    The problem with SELinux comes when you try applying it to general purpose systems, because you do not know ahead of time what the user will want to do. To be effective, policy needs to be written for the specific system it will be running on.

    An example I like to use is Android. Android makes great use of SELinux, and is a general purpose system. But the SELinux policy itself does not protect the general purpose Android system. It protects the special purpose system that is the Android runtime. All apps run with the same policy that says things like “cannot access the filesystem at all, unless given access by the Android runtime”, then the actual security policy users see is all implemented in use space by Android. SElinux is just a means of preventing apps from bypassing the Android permission system.


  • Also, AppArmor might not exist without SELinux.

    When the NSA first implemented SELinux, they did so directly, but were not able to get that merged into mainline because there was concern that SELinux was not the correct solution.

    What they ended up doing was creating the Linux Security Modules (LSM) framework, which is just a bunch of hooks in the kernel that a module can implement. SELinux was then rewritten as LSM module. This allowed other solutions like AppArmor to be implemented without any invasive work; they could just plug into the same system SELinux used.

    Some time later, the ability to run multiple LSMs at once was added.

    Incidentally, Linux capabilities are also implemented as an LSM.


  • A typical employee would have taxes taken out of every paycheck. Employers calculate that assuming they are your only source of income and you have nothing interesting going on tax wise, which is correct for 90% of people. Employees can ask for their income tax withholding to be changed and employers will do so no questions asked [1]. At the end of the year, you’re employer will give you a form W2 that says how much they payed you, how much they paid in taxes on your behalf, how much they payed into your tax deductible account on your behalf, etc. Basically everything about your job that is tax relevant. A copy of this W2 form is sent to the IRS.

    If you have investment accounts, work as an independent contractor, or various other forms of income, you will generally be given a form 1099. Again, a copy of this will be sent to the IRS. Income tax is not automatically withheld from these, so if you get a lot of income through them, you may owe taxes at the end of the year.

    You may also qualify for tax deductions that lower your effective income for the purposes of computing your income tax. For instance, the interest on you mortgage, charitable donations, etc. However if you choose not to claim these, you can instead claim a deduction of about $14,000; which is more than most people would be able to deduct anyway, so there often isn’t a point of keeping track of these.

    There are a couple of less common situations that you may need to deal with

    1. You can deduct significantly more than the standard deduction, so actually need to keep track of all of your possible deductions.

    2. You are self employed. In this case, you need to keep track of your business expenses, as those are deductible. You also do not have anyone taking out your income tax for you, so you are responsible for making sure you have enough saved come tax time (these tend to be the people who have problems). You are also supposed to pay taxes quarterly.

    3. You have a significant amount of income that is not from a single W2 employer. This can be multiple W2 jobs, 1099 jobs, investment income, proceeds from criminal activity, etc.

    4. You make a significant amount of money from unreported cash tips. (In practice, you can underreport this and no one will know).

    5. You choose to deduct your state’s sales tax instead of your states income tax; and do so by actually tracking how much you pay in sales tax instead of estimating it based on your income.

    Having said all of that. For 99% of taxpayers, the IRS knows exactly how much you owe; because all of your income was reported to them, as was your only significant deductions, and nothing else matters because you just take the standard deduction for the rest. The IRS could send you a bill/refund based on this and let the remaining 1% file if the IRS gets it wrong. However, that would collapse the tax preparation industry, so companies like TurboTax have lobbied against it for years.

    What actually happens instead is you go to TurboTax, upload all of the forms that were sent to the IRS, and let them file taxes on your behalf. This service was “free” until they were sued for false advertising on account of charging money.

    [0] At least for income tax. There’s a few other taxes on payroll that you cannot change.

    [1] Assuming you asked in the form of a properly filled out W4.


  • homura1650@lemmy.worldtoWorld News@lemmy.world*Permanently Deleted*
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    1
    ·
    6 months ago

    Volatility has always been built into investing, including index funds.

    If retirement is a long way away, then this is a non event. If retirement is close and your 401k was in a target date fund, you are heavily invested in bonds at this point, precisely to deal with this sort of situation.

    If you are close to retirement, and heavily weighed to tech heavy indecies, then this will probably delay your retirement a few years. If you’re already retired and so invested, you may have a problem.


  • In fairness to the PA, Palestine has an approximately 0% chance of winning a war against Israel. And an approximately 100% chance of them getting blown to pieces if they ever had an attack successful enough for Israel to fully mobilize against them (see Gaza).

    Their most likely to succeed strategy would be pursuing victory through the Israeli court system (which was relatively on their side, leading to the attempted “court reform” power grab that was the political story in Israel prior to October 7). Their next best bet would be Israeli politics moving away from the current right wing nationalist coalition.

    That is not to say that any of the above is easy, or likely to succeed. But at least it has a plausible chance. And, if it fails, that failure still leaves them better off than a war against Israel.




  • Official death tolls are always an undercount. Even after mundane disasters like hurricanes, the death toll gets revised up during the cleanup as more victims are discovered. The disaster in Gaza is still ongoing, so people have more important things to do than count the dead.

    In addition to this, the Gaza Health Ministry has taken a deliberately conservative approach of only counting bodies that make it to a hospital and are clearly dead as a direct result of the conflict (e.g, not disease or famine).

    The official death count is not a reflection of how many people are dying. It is a reflection of the Gaza Health Ministry’s capacity to count the dead.


  • homura1650@lemmy.worldto196@lemmy.blahaj.zonerule
    link
    fedilink
    arrow-up
    3
    ·
    6 months ago

    Women’s skirts work just fine for men. You just need to translate between sizing scale, which is not that difficult (although it is annoying unless you are in person and can actually try things on).

    Crop tops are much more difficult to buy, as a lot of those really look bad if you don’t have breasts.


  • homura1650@lemmy.worldto196@lemmy.blahaj.zonerule
    link
    fedilink
    arrow-up
    13
    ·
    6 months ago

    I think of this as analogous to the movement to get women to wear pants. It’s not that we wanted them to present as masculine; it’s that we wanted pants to stop being masculine and start being just clothes. Basically all masculine coded attire became androgynous, but almost no feminine code attire did.

    It’s not like skirts are inherently feminine either. There are plenty of examples across cultures and time of it being perfectly normal for men to wear them.


  • You get this property in algrabraic structures called “wheels”. The simplest to understand wheel is probably the wheel of fractions, which is a slightly different way of defining fractions that allows division by 0.

    The effect of this is to create 2 additional numbers: ∞ = z/0 for z != 0, ⊥, and ⊥ = 0/0.

    Just add infinity gives you the real projective line (or Riemen Sphere if you are working with comples numbers). In this structure, 0 * ∞ is undefined, so is not quite what you want

    ⊥ (bottom) in a wheel can be thought as filling in for all remaining undefined results. In particular, any operation involving ⊥ results in ⊥. This includes the identity: 0 * ⊥ = ⊥.

    As far as useful applications go, there are not many. The only time I’ve ever seen wheels come up when getting my math degree was just a mistake in defining fractions.

    In computer science however, you do see something along these lines. The most common example is floating point numbers. These numbers often include ∞, -∞ and NaN, where NaN is essentially just ⊥. In particular, 0 * NaN = NaN, also 0 * ∞ = ⊥. The main benefit here is that arithmetic operations are always defined.

    I’ve also seen an arbitrary precision fraction library that actually implemented something similar to the wheel of fractions described above (albeit with a distinction between positive and negative infinity). This would also give you 0 * ∞ = ⊥ and 0 * ⊥ = ⊥. Again, by adding ⊥ as a proper value, you could simplify the handling of some computations that might fail.


  • I think it’s even simpler than that. A lot of the people conflating anti-Israel sentiment with anti Jewish sentiment are ethno nationalists. On the Israeli side, those would be Jewish nationalists; but here in the US, the sentiment is disproportionately coming from Christian nationalists. Incidentally, these people also tend to be the same people who conflate anti-current-governing-coalition-and-policy-of-Isreal sentiment with anti Israel sentiment more generally, because that conflation is part of fascist ideology, and ethno nationalism tends to be a fascist ideology.

    The reason we see pro-Zionist media ferment anti semitism is simply that the Zionist movement is ideologically aligned with most anti-semetic movements.



  • I suspect they are inclined to tell the Russians to kick rocks. However, they are going to need some foreign support. As long as they are on the US terror list, it will be very difficult for that help to come from any US aligned group.

    Having said that, between the growing disagreement over Israel policy, the coming 4 years of a Trump administration, and the desire of a lot of European countries to resolve the Syrian Refugee crisis; I could see a lot of European countries going against the US on this one and helping the new Syrian government.