20764 matches found
PT-2023-20217 · Nautobot · Nautobot
Name of the Vulnerable Software and Affected Versions: Nautobot versions prior to 1.5.7 Description: Nautobot is a Network Source of Truth and Network Automation Platform. All users of Nautobot versions earlier than 1.5.7 are impacted by a remote code execution vulnerability. Nautobot did not...
Price feed in MCAGRateFeed#getRate is not sufficiently validated and can return stale price
Lines of code Vulnerability details Impact MCAGRateFeedgetRate may return stale data Proof of Concept , int256 answer,,, = oracle.latestRoundData; Classic C4 issue. getRate only uses answer but never checks the freshness of the data, which can lead to stale bond pricing data. Stale pricing data c...
Weintek EasyBuilder Pro cMT Series
1. EXECUTIVE SUMMARY CVSS v3 9.3 ATTENTION: Exploitable remotely/low attack complexity Vendor: Weintek Equipment: EasyBuilder Pro Vulnerability: Path Traversal: '\..\filename' 2. RISK EVALUATION Successful exploitation of this vulnerability could allow an attacker to gain control of the user’s...
Security Bulletin: IBM B2B Advanced Communications is vulnerable to denial of service due to SnakeYAML (CVE-2017-18640)
Summary IBM B2B Advanced Communications has addressed vulnerabilities in SnakeYAML shipped with product. Vulnerability Details CVEID:CVE-2017-18640 DESCRIPTION: SnakeYAML is vulnerable to a denial of service, caused by an entity expansion in Alias feature during a load operation. By sending a...
StabilizerNode.stabilize() should update lastTracking as well to avoid an unnecessary incentive.
Lines of code Vulnerability details Impact StabilizerNode.stabilize should update lastTracking as well to avoid an unnecessary incentive. Current logic pays unnecessary incentives to track the pool. Proof of Concept trackPool pays an incentive per trackingBackoff in order to ensure pool...
Average APRs might be calculated wrongly after calling populateFromPreviousThrottle().
Lines of code Vulnerability details Impact Average APRs might be calculated wrongly after calling populateFromPreviousThrottle and targetAPR might be changed unexpectedly. Proof of Concept The epoch state struct contains cumulativeCashflowApr element and cashflowAverageApr is used to adjust...
TRANSFERING KIBToken TO YOURSELF INCREASES YOUR BALANCE
Lines of code Vulnerability details Impact using temporary variables to update balances is a dangerous construction. If transferred to yourself, it will cause your balance to increase, thus growing the token balance infinitely Proof of Concept KIBToken overrides transfer to perform the transfer o...
Unnecessary precision loss in redeemKIBT()
Lines of code Vulnerability details Impact Unnecessary precision loss in redeemKIBT Proof of Concept If enter Deprecated mode, user can switch back to StableCoin by percentage with redeemKIBT The redeemKIBT implementation code is as follows: function redeemKIBTuint256 amount external override...
Function stabilize() might always revert because of overflow since Malt contract use solidity 0.8
Lines of code Vulnerability details Impact MaltDataLab fetched priceCumulative directly from Uniswap V2 pool to calculate price of Malt token. However, it is noticed that Uniswap V2 pool use Solidity 0.5.16, which does not revert when overflow happen. In addition, it is actually commented in...
LinearDistributor.declareReward can revert due to dependency of balance
Lines of code Vulnerability details Impact LinearDistributor.declareReward will revert and it can cause permanent DOS. Proof of Concept In LinearDistributor.declareReward, if the balance is greater than the bufferRequirement, the rest will be forfeited. if balance bufferRequirement // We have mor...
SwingTraderManager.swingTraders() shoudn't contain duplicate traderContracts.
Lines of code Vulnerability details Impact If SwingTraderManager.swingTraders contains duplicate traderContracts, several functions like buyMalt and sellMalt wouldn't work as expected as they work according to traders' balances. Proof of Concept During the swing trader addition, there is no...
An early check logic in StabilizerNode.stabilize prevents possible stabilization.
Lines of code Vulnerability details Impact An early check logic in StabilizerNode.stabilize prevents possible stabilization. Proof of Concept In StabilizerNode.stabilize, there is an early check logic for exchangeRate and auction state. If shouldAdjustSupply returns false, stabilize will end...
RewardThrottle.setTimekeeper: If changing the timekeeper causes the epoch to change, it will mess up the system
Lines of code Vulnerability details Impact RewardThrottle.setTimekeeper allows POOLUPDATERROLE to update the timekeeper when RewardThrottle is active, function setTimekeeperaddress timekeeper external onlyRoleMaltPOOLUPDATERROLE, "Must have pool updater privs" requiretimekeeper != address0, "Not...
latestSample can be manipulation to make stabilize() calls always fail
Lines of code Vulnerability details Impact In function stabilize, in case exchangeRate priceTarget, which means price of Malt is larger than $1 so it has to sell Malt to return to $1. However, team don't want to sell Malt when the market is too volatile price changing too fast, so they added some...
The latest malt price can be less than the actual price target and StabilizerNode.stabilize will revert
Lines of code Vulnerability details Impact StabilizerNode.stabilize will revert when latestSample priceTarget and msgSender is not an admin and not whitelisted, it asserts livePrice minThreshold. And minThreshold is calculated as follows: uint256 priceTarget = maltDataLab.getActualPriceTarget;...
RewardThrottle.checkRewardUnderflow() might track the cumulative APRs wrongly.
Lines of code Vulnerability details Impact RewardThrottle.checkRewardUnderflow might calculate the cumulative APRs for epochs wrongly. As a result, cashflowAverageApr will be calculated incorrectly in updateDesiredAPR, and targetAPR would be changed unexpectedly. Proof of Concept In...
Repository._removeContract() removes the contract wrongly.
Lines of code Vulnerability details Impact After removing the contract, the contracts array would contain the wrong contract names. Proof of Concept Repository.removeContract removes the contract name from contracts array. File: 2023-02-malt\contracts\Repository.sol 223: function...
SwingTraderManager.sellMalt() doesn't update totalProfit for some cases.
Lines of code Vulnerability details Impact SwingTraderManager.totalProfit would be less than the real amount and the impact might be low as this amount isn't used elsewhere. After the second look, I think the SwingTraderManager itself might be used as a swing trader againI am not sure the protoco...
LinearDistributor.declareReward() might revert after changing vestingDistributor.
Lines of code Vulnerability details Impact LinearDistributor.declareReward might revert after changing vestingDistributor due to uint underflow. Proof of Concept In LinearDistributor.sol, there is a setVestingDistributor function to update vestingDistributor. And in declareReward, it calculates t...
RewardThrottle.checkRewardUnderflow can't distribute rewards because fillInEpochGaps updates activeEpoch when RewardThrottle is inactive
Lines of code Vulnerability details Impact RewardThrottle.checkRewardUnderflow can't distribute rewards because activeEpoch can be updated to a new one. Proof of Concept RewardThrottle.checkRewardUnderflow distributes rewards only when RewardThrottle is active. function checkRewardUnderflow publi...