我应该想出一个利用"返回libc缓冲区溢出"的程序.执行时,它会干净地退出并显示SHELL提示符.该程序在bash终端中执行.以下是我的C代码:
#include <stdio.h>
int main(int argc, char*argv[]){
char buffer[7];
char buf[42];
int i = 0;
while(i < 28)
{
buf[i] = 'a';
i = i + 1;
}
*(int *)&buf[28] = 0x4c4ab0;
*(int *)&buf[32] = 0x4ba520;
*(int *)&buf[36] = 0xbfffff13;
strcpy(buffer, buf);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
使用gdb,我已经能够确定以下内容:
我也知道,使用gdb,在我的缓冲区变量中插入32"A"会覆盖返回地址.因此,假设系统调用是4个字节,我首先填充28字节的内存"泄漏".在第28个字节,我开始我的系统调用,然后退出调用,最后添加我的"/ bin/sh"内存位置.
但是,当我运行程序时,我得到以下内容:
sh: B???: command not found
Segmentation fault (core dumped)
Run Code Online (Sandbox Code Playgroud)
我真的不确定我做错了什么......
[编辑]:我能够通过导出环境变量获得字符串"/ bin/sh":
export MYSHELL="/bin/sh"
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个很好的JavaScript图形库,可以处理以下类型的图形:
我尝试过谷歌的图表工具,但他们似乎并没有得到一个很好的柱状图(我也不能得到他们的动态图表的正常工作,甚至担任过我的Apache Web服务器).
我希望有一个像样的图书馆,在那里,可以支持所有的这些,但是如果必须这样,我可以包括2个不同的库(看谷歌图表工具,gRafael,flotr和rgraph现在 - 其中没有一个似乎包括我的所有要求.
我有一个div类设置与以下CSS样式:
div.multiple_choice{
border: 1px solid black;
max-width: 300px;
max-height: 200px;
overflow: auto;
}
Run Code Online (Sandbox Code Playgroud)
问题是,当内部文本没有强制DIV达到最大高度200px时,垂直滚动条仍然显示出来.我可以单击向上和向下箭头,但它只会将内容上下移动大约一个像素或两个像素.
这是在谷歌Chrome(版本18.0)和Iceweasel 11中发生的.
我在CentOS上部署了一个Django应用程序.这是我的httpd.conf文件的样子:
WSGISocketPrefix /var/run/wsgi
<VirtualHost *:80>
WSGIDaemonProcess safe python-path=/usr/lib/python2.6/site-packages
WSGIProcessGroup safe
WSGIScriptAlias / /opt/safe/safe/wsgi.py
<Directory /opt/safe/safe/>
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
编辑:这是我的 TEMPLATE_DIRS
TEMPLATE_DIRS = (
# Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
"/opt/safe/static/templates",
"/var/www/html/static/templates",
)
Run Code Online (Sandbox Code Playgroud)
编辑:这是我的管理员/电子邮件设置:
ADMINS = (
# ('Your Name', 'your_email@example.com'),
('David', 'david@localhost'),
)
SEND_BROKEN_LINK_EMAILS = True
DEFAULT_FROM_EMAIL = 'david@localhost'
SERVER_EMAIL = DEFAULT_FROM_EMAIL
Run Code Online (Sandbox Code Playgroud)
在我的模板目录中,我已经定义了一个自定义500.html文件.当我设置我settings.py …
我在PostgreSQL(PLPGSQL)中有一个函数,它返回一个包含两个元素的数组.当我运行一个调用该函数的select语句时,我得到一个包含该数组的列(如预期的那样):
{1, 2}
Run Code Online (Sandbox Code Playgroud)
我真正想要做的是将这些元素提取为自己的列:
[ 1 | 2 ]
Run Code Online (Sandbox Code Playgroud)
我发现我能做到:
SELECT (MyFunction())[1], (MyFunction())[2]
Run Code Online (Sandbox Code Playgroud)
但是它会调用该函数两次,因此运行时间加倍(此函数是一个非常耗时的函数).有没有更好的方法来处理这个?
UPDATE
这是我所拥有的几乎完美的复制品:
SELECT table1.a, table1.b, table1.c, (MyFunction(table1.a, table1.b, table1.c))[1],
(MyFunction(table1.a, table1.b, table1.c))[2]
FROM table1
INNER JOIN table2 using(b)
WHERE ... GROUP BY table1.a, table1.b, table1.c;
Run Code Online (Sandbox Code Playgroud)
同样,这会产生数组中的两列,但我的函数被调用两次,这使我的运行时间加倍.
我发现,默认情况下,PLPGSQL中数组的第一个索引从1开始,而不是像大多数编程语言一样.我只是好奇为什么会这样,以及其他编程语言是如何遵循这一点的?
谢谢!
在Plone中,我创建了一个名为"Admin"的新文件夹,它出现在顶部导航栏中.如何限制对此文件夹的访问权限,以便只有站点管理员才能访问此文件夹?(并且,最好只有那些管理员会看到该链接出现)?
我有一个Plone加载项(通过Zope创建),包括Javascript和页面模板文件.一些Javascript函数需要调用Python脚本(通过AJAX调用) - 如何在不通过ZMI的情况下将这些Python脚本包含在我的附加组件中?
我有一个"浏览器"文件夹,其中包含一个"configure.zcml"文件 - 注册资源目录和我的模板文件.我会假设注册python文件与此类似,或类似于Javascript文件的注册方式,但也许不是?
是否可以使用configure.zcml文件或类似方法为Zope注册外部方法?我正在尝试注册外部Python脚本(类似于其他注册表项,如主题中的"jsregistry.xml"或"cssregistry.xml")
我在Python(2.6.1)词典中遇到了一个奇怪的行为:
我的代码是:
new_item = {'val': 1.4}
print new_item['val']
print new_item
Run Code Online (Sandbox Code Playgroud)
结果是:
1.4
{'val': 1.3999999999999999}
Run Code Online (Sandbox Code Playgroud)
为什么是这样?它发生在一些数字上,但不是其他数字.例如:
我假设Plone具有存储在Data.fs文件(Zope DB?)中的基本"系统"消息.这意味着,例如,当您退出时(英文)显示的文字显示"您现在已退出".它存储在Zope DB中的某个位置.
有没有办法改变这些消息的内容?我们有一个俄语翻译的网站,我们想修改"你现在已经注销"的消息 - 但我无法在ZMI或文件系统中的任何地方找到它.
如果我的假设是正确的,并且它们存储在Zope DB中,是否有一个很好的实用程序来浏览/修改这些内容?
我在 Django 模型文件中定义了一系列表,它告诉我将关键字添加related_name到一小部分字段中,因为多个字段指向同一个表。我这样做了,现在当我尝试同步数据库时,出现以下错误:
TypeError: __init__() got an unexpected keyword argument 'related_name'
Run Code Online (Sandbox Code Playgroud)
我的相关名字都不一样,所以我不确定我错过了什么......
plone ×3
arrays ×2
django ×2
postgresql ×2
python ×2
add-on ×1
admin ×1
apache ×1
bash ×1
c ×1
configure ×1
css ×1
dictionary ×1
directory ×1
external ×1
function ×1
graphing ×1
javascript ×1
methods ×1
mod-wsgi ×1
overflow ×1
plpgsql ×1
restrictions ×1
scripting ×1
scroll ×1
typeerror ×1
zcml ×1
zope ×1