scguild-rs's People
scguild-rs's Issues
Reminder: Stop ignoring RUSTSEC-2020-0159 after fix
This issue is a reminder to remove the ignore statement for RUSTSEC-2020-0159 after it gets fixed. See chronotope/chrono#499 for more info.
RUSTSEC-2020-0159: Potential segfault in `localtime_r` invocations
Potential segfault in
localtime_r
invocations
Details | |
---|---|
Package | chrono |
Version | 0.4.19 |
URL | chronotope/chrono#499 |
Date | 2020-11-10 |
Impact
Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.
Workarounds
No workarounds are known.
References
See advisory page for additional details.
RUSTSEC-2020-0048: Use-after-free in BodyStream due to lack of pinning
Use-after-free in BodyStream due to lack of pinning
Details | |
---|---|
Package | actix-http |
Version | 3.0.0-beta.6 |
URL | actix/actix-web#1321 |
Date | 2020-01-24 |
Patched versions | >=2.0.0-alpha.1 |
Affected versions of this crate did not require the buffer wrapped in BodyStream
to be pinned,
but treated it as if it had a fixed location in memory. This may result in a use-after-free.
The flaw was corrected by making the trait MessageBody
require Unpin
and making poll_next()
function accept Pin<&mut Self>
instead of &mut self
.
See advisory page for additional details.
`/fleet list` command shows all ships for a user
Fleet list should show the user's fleet, or the fleet of the specified other user. It should be ephemeral unless specified otherwise.
`/fleet add` command inserts a new ship into the database for the user
The new ship should have a model ID and optional name, and be associated with the user who created it.
RUSTSEC-2021-0081: Potential request smuggling capabilities due to lack of input validation
Potential request smuggling capabilities due to lack of input validation
Details | |
---|---|
Package | actix-http |
Version | 3.0.0-beta.7 |
Date | 2021-06-16 |
Patched versions | >=2.2.1, <3.0.0,>=3.0.0-beta.9 |
Affected versions of this crate did not properly detect invalid requests that could allow HTTP/1 request smuggling (HRS) attacks when running alongside a vulnerable front-end proxy server. This can result in leaked internal and/or user data, including credentials, when the front-end proxy is also vulnerable.
Popular front-end proxies and load balancers already mitigate HRS attacks so it is recommended that they are also kept up to date; check your specific set up. You should upgrade even if the front-end proxy receives exclusively HTTP/2 traffic and connects to the back-end using HTTP/1; several downgrade attacks are known that can also expose HRS vulnerabilities.
See advisory page for additional details.
Generate a custom, unique tail number per ship
Ensure the tail number is globally unique. Allow guilds to set a prefix to show before the tail number. Allow users to opt into the prefix on a per-ship basis.
Consider allowing custom tail numbers to be set if CIG creates unique tail numbers in game so that users can match their actual owned craft.
Database Access Though Repository Trait
Database access should be accomplished through a repository trait to ensure ease of swapping out databases.
Include tests.
Track game version for SC data and player data
For data mined from star citizen, track it's game version for historical changes. It'd be neat if this could be done via events and projections but even a full record with version is fine
For player data (trade logs, refinery jobs, etc), track the game version for each record or event so that changes in the patch can be used for filtering data.
Finish migration from diesel to sqlx
Currently in the process of migrating from diesel to sqlx. Needs finished.
RUSTSEC-2020-0071: Potential segfault in the time crate
Potential segfault in the time crate
Details | |
---|---|
Package | time |
Version | 0.1.44 |
URL | time-rs/time#293 |
Date | 2020-11-18 |
Patched versions | >=0.2.23 |
Unaffected versions | =0.2.0,=0.2.1,=0.2.2,=0.2.3,=0.2.4,=0.2.5,=0.2.6 |
Impact
Unix-like operating systems may segfault due to dereferencing a dangling pointer in specific circumstances. This requires an environment variable to be set in a different thread than the affected functions. This may occur without the user's knowledge, notably in a third-party library.
The affected functions from time 0.2.7 through 0.2.22 are:
time::UtcOffset::local_offset_at
time::UtcOffset::try_local_offset_at
time::UtcOffset::current_local_offset
time::UtcOffset::try_current_local_offset
time::OffsetDateTime::now_local
time::OffsetDateTime::try_now_local
The affected functions in time 0.1 (all versions) are:
at
at_utc
Non-Unix targets (including Windows and wasm) are unaffected.
Patches
Pending a proper fix, the internal method that determines the local offset has been modified to always return None
on the affected operating systems. This has the effect of returning an Err
on the try_*
methods and UTC
on the non-try_*
methods.
Users and library authors with time in their dependency tree should perform cargo update
, which will pull in the updated, unaffected code.
Users of time 0.1 do not have a patch and should upgrade to an unaffected version: time 0.2.23 or greater or the 0.3. series.
Workarounds
No workarounds are known.
References
See advisory page for additional details.
RUSTSEC-2018-0019: Multiple memory safety issues
Multiple memory safety issues
Details | |
---|---|
Package | actix-web |
Version | 4.0.0-beta.6 |
URL | actix/actix-web#289 |
Date | 2018-06-08 |
Patched versions | >=0.7.15 |
Affected versions contain multiple memory safety issues, such as:
- Unsoundly coercing immutable references to mutable references
- Unsoundly extending lifetimes of strings
- Adding the
Send
marker trait to objects that cannot be safely sent between threads
This may result in a variety of memory corruption scenarios, most likely use-after-free.
A signficant refactoring effort has been conducted to resolve these issues.
See advisory page for additional details.
RUSTSEC-2020-0056: stdweb is unmaintained
stdweb is unmaintained
Details | |
---|---|
Status | unmaintained |
Package | stdweb |
Version | 0.4.20 |
URL | koute/stdweb#403 |
Date | 2020-05-04 |
The author of the stdweb
crate is unresponsive.
Maintained alternatives:
See advisory page for additional details.
Track live vs ptu for all entities to enable an easy separation of concerns
RUSTSEC-2021-0131: Integer overflow in the bundled Brotli C library
Integer overflow in the bundled Brotli C library
Details | |
---|---|
Package | brotli-sys |
Version | 0.3.2 |
URL | bitemyapp/brotli2-rs#45 |
Date | 2021-12-20 |
A buffer overflow exists in the Brotli library versions prior to 1.0.8 where an attacker controlling the input length of a "one-shot" decompression request to a script can trigger a crash, which happens when copying over chunks of data larger than 2 GiB.
An updated version of brotli-sys
has not been released. If one cannot update the C library, its authors recommend to use the "streaming" API as opposed to the "one-shot" API, and impose chunk size limits.
In Rust the issue can be mitigated by migrating to the brotli
crate, which provides a Rust implementation of Brotli compression and decompression that is not affected by this issue.
See advisory page for additional details.
`/fleet mothball` will mark a ship in the database as mothballed
This command should not actually delete a ship but just mark it as mothballed.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.