游戏源码

http://cboard.cprogramming.com/c-programming/114023-simple-blackjack-program.html

打开之后是一个游戏

你有500本金,赢到一百万才有flag

每次下注不能超过本金,运气好都要很久,更何况还会输,那么我们看看这个游戏的源码,但是

于是我窃了一下其他的博客的源码

int betting() //Asks user amount to bet
{
printf("\n\nEnter Bet: $");
scanf("%d", &bet); if (bet > cash) //If player tries to bet more money than player has
{
printf("\nYou cannot bet more money than you have.");
printf("\nEnter Bet: ");
scanf("%d", &bet);
return bet;
}
else return bet;
} // End Function

可以看到这里,第一次判断如果下注超过本金,则告诉你没有那么多钱,并且让你在输入一次,重点是第二次输入的本金没有进行二次判断是否大于本金,于是我们就可以利用这里逻辑漏洞:第一次故意故意输入大于500,第二次输入一百万,一次一百万获取flag

第一次输入501,第二次1000000

与电脑斗智斗勇,然后暴富

或者可以利用负数

YaY_I_AM_A_MILLIONARE_LOL

最新文章

  1. STM32CubeMX安装指南
  2. 百度之星初赛2A 1001 ALL X(HDU 5690)
  3. shell技巧
  4. Sequelize 关系模型简介
  5. MySQL导入.sql文件及常用命令
  6. Linux:设置alias永久生效
  7. 高德开发 android 出现 key 鉴权失败
  8. Websocket协议之php实现
  9. 12天学好C语言——记录我的C语言学习之路(Day 6)
  10. bzoj1027
  11. [BZOJ 1068] [SCOI2007] 压缩 【记忆化搜索】
  12. javascript数据类型、初始化
  13. MySQL引擎简述
  14. 安卓UDP通信2
  15. 1596: [Usaco2008 Jan]电话网络
  16. Linux学习决心书
  17. Less 编译工具
  18. 使用 shell / python 进行sql的excel报表导出
  19. Linux下一些简单常用命令的总结
  20. 为什么MySQL数据库要用B+树存储索引?

热门文章

  1. 关于Linux下进程的详解【进程查看与管理】
  2. css3的新属性 新增的颜色--- 透明度---两种渐变---定义多张背景图--background-size
  3. RNN及其变体框架
  4. Statements、PreparedStatement及CallableStatement(三)
  5. 关于scanf的一些知识
  6. 使用Runtime的hook技术为tableView实现一个空白缺省页
  7. 《转》crontab 定时任务
  8. C# read dll config
  9. C# 矢量图EMF 总结
  10. frigate_TUNNEL